|
|
|
|
|
by Profpatsch
4181 days ago
|
|
> is that there is no such thing as "bad feature" or "feature that results in bad design". No, even straight "goto" is not such a feature. Yet, there are features that lead (with a high probability) to bad program code (see goto)
Of course it’s always basically the same once a language is turing-complete, so we have to rate languages by how they do certain things. There is the widely-known term of “code smell” or even “antipattern“, I’m pretty certain such a thing exists for language design, too.
I did list those features I found lead to “design smell”. By the way, comparing penises by writing out numbers w/o any reference is silly at most. |
|
No, I disagree. It's feature usage - or rather misusing it - that leads to "bad code". And that's even before we start talking about what is a "good" or "bad" code, which is OK to discuss on a high-level, but invariably leads to flame wars when it comes to details.
> I’m pretty certain such a thing exists for language design, too.
What I'm saying is that I didn't see this in action, ie. I found no obvious correlation between any single feature and good or bad language design, across all the languages I learned/investigated (EDIT: where the sample size is 40, also see below). Also, saying that a particular language design is "good" or "bad" is utterly meaningless: the only way of judging PL designs is on how well they suit to some purpose. Take a look at J or Forth - these are beautiful designs, yet you probably wouldn't want to use them to code a basic CRUD app.
> comparing penises by writing out numbers w/o any reference is silly at most.
My VPS hosting is dead for some reason, but you can see - incomplete, work in progress - list of those languages here: https://klibert.pl/articles/programming_langs.html (when it comes back EDIT: should be working now).
Also, thanks for assuming so much about my mentality from a simple comment; in reality I'm just happy and excited about my new side project, which happens to be about documenting my experience with various languages and their usefulness in polyglot setting.