Friday, January 19, 2018

What's nuts about the latest, new programming languages and programming language enhancements

1) There is really nothing new about them. In fact, some are a re-hash of languages and days gone by. The authors of these languages just don't know history, leading to history repeating itself, over and over and over... (recursion, infinite looping...). Blah!

2) Most of the languages aim to do one thing, reduce typing. Really? No programmer types these days. Smart editors and IDEs auto-complete and do the typing of all the programming text leaving only data to be typed. And data is always cut or copied and then pasted.

3) The new languages strive to remove the need for syntactic sugar (end-of-statement markers like ';' and '(' and ')' to group parameters, '{' and '}' to mark lexical levels...) reducing the readability of program source, returning code back to the days of terse, unreadable gibberish, mass of random text. Rendering the source difficult to review, visually debug and pass onto the next developer. Blah!

4) Let's not forget, introducing more ways, usually with less keystrokes, to do the same thing bloats the language; bloating it into volumes of documentation. Please, keep the language separate from libraries - don't integrate functionality into the language that can be simply packaged as a library.

Let's make a new rule. If your programming language can't be described in a book with the same number of pages or less than "The C Programming Language" by Kernighan & Ritchie, please just stop. And, yes every programming language needs documentation - a language is only intuitive to the person who authored it. Really.

No comments: