On Sat, Jun 27, 2020 at 07:15:25PM -0600, ben via cctalk wrote:
[...]
At what point do variable names end being comments?
There needs to be more
work on proper documenting and writing programs and modules.
What, auto-generated "documentation" which just lists function names and type
signatures is not useful? This is news to pretty much every Java project I've
had the misfortune of interacting with.
I am not a fan of objects and operator overloading
because I never know just
what the program is doing. apples + oranges gives me what ? count of fruits,
liters of fruit punch, a error?
That does of course depend on the strictness of the language's type system and
whether the developer has exercised good taste and discretion when using
operator overloading in their API. I would normally expect the compiler to
reject attempts to add two incompatible types, but this is often a triumph of
hope over experience. (But avoid PHP, JavaScript, and similar junk languages
hacked together in a Coke-fuelled bender to solve the immediate problem, and
you're 90% of the way there.)
It would be nice if one could define a new language
for problem solving and
run it through compiler-compiler processor for interesting problems.
I'm unclear on what you're trying to say here.
Source-to-source translators are of course a well-trodden path, such as early
C++ "compilers" which emitted C. A weaker variant is to abuse operator
overloading to create a minilanguage that is directly compilable without
translation. Such corner-cutting techniques are useful for prototyping new
ideas, but tend to cause more trouble than they are worth if used as-is in
production.
My day job currently involves PureScript, a Haskell-inspired language which is
translated into JavaScript. It is quite an experience.