Design a programming language that avoids symbols/operators (because they are hard to type and hard to look up) but instead uses two-letter words for reserved words and important functions. There are 26^2=676 available. The user gets to define identifiers of 1 letter or 3 or more letters.
Of course, the boundary between user and library writer is fuzzy.
Interestingly weird might be if a Lisp-like language avoided parentheses but instead used, say, "bn" (begin) and "nd" (end) everywhere. Perhaps that's what the user types but the IDE UI renders their contents as pretty-printed indented blocks.
Inspired by whether the (.) operator should be function composition (as it is by default), or weak-precedence reverse function application as in the Air library for Haskell, mimicking object-oriented programming style.
Also inspired by the opaqueness of languages that use lots of non-letter symbols, perhaps permitted user-defined operators, causing programs to look like line noise. Though, a whole bunch of two letter codes might not be much better.
No comments :
Post a Comment