Hacker News new | past | comments | ask | show | jobs | submit login

That's all well and good but whatever the rationale it still makes code unnecessarily hard to read.

  A := B;
  X := Y(Z);
Is B a variable name or a function call? Is Y a function or an array? Is Z itself a function call? There is no way to know the answers without looking up the definitions for B, Y, and Z. And the answers are important because function calls can alter the program state and affect performance in ways that a variable deference or array subscript cannot.

So when reading Ada code, a developer has to constantly jump around the code base to understand which fundamental language mechanics are being used. It's a frustrating problem for someone who has to review real-time, safety-critical Ada code. And I've never run into that problem with any other language.




There's the same issue with C++ vs C: C++ is better for 'programming in large codebase ' because it can hide/encapsulate more things.

But that makes C++ worse for hard real time programming where you want to know what's happening.


With more descriptive variable names it’s not really a problem in practice. If B and Y contain verbs, they’re probably procedure/function calls.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: