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.