Niklaus Wirth's post-Pascal languages, including Modula-2 (and its offshoot Modula-3) and Oberon were fantastic. Their syntaxes fit on a single piece of paper. Modula-3 is an outlier, since it was developed without much involvement from Wirth, but it adds some nice stuff, such as generics. Oberon had a strong influence on Go.
As a kind of "lost language", Barbara Liskov's CLU (1974-75) is fascinating. Its syntax is Algol/Simula-like, but it comes with a lot of advanced features (iterators, generics, type parameters with constraints, exceptions, variant types, parallel assignments, inheritance-less classes, "everything is an object", garbage collection, no global variables) that eventually ended up in other languages, much later. CLU was never intended to be used, but as a testbed for ideas, and it never really was.
Wirth felt the language was too large (although this is all relative since Modula-2 is smaller than many modern languages) and so Oberon, his next language, was deliberately pared down to the smallest number of keywords and features he could manage. I've always liked this philosophy and still think a smaller language is preferable to a larger language in many cases. There's something satisfying about knowing all the features of a language - you actually feel you might be able to master it.
isprime is op n {not ((n = 1) or (0 in (n mod (rest count (floor (sqrt n))))))}
https://github.com/danlm/QNial7Unicon is still under development unlike Icon. I don't think Unicon has ever been discussed on Hacker News. Ever.
It has builtin backtracing, which can be quite useful for text parsing.
I also like TXR, which also has builtin backtracing.
As an example here is the complete source code for a very simple game:
"Prototype" by defaultcompany
The Lookout Point is a room. An old man is here.
The Outskirts is south from the Lookout Point. A campaign poster is here.
The Village is east from the Outskirts.
The Scumm Bar is inside from The Village.
(The variant Supertalk is still in use, in SuperCard).
I have the following AHK enabled "features" for lack of a better term always running on windows.
Caps lock triggers a context sensitive - which app - screen overlay of relevant shortcuts (assembled by hand) as well as a menu which autofilters a long lsit of commands, other scripts or websearches, like yubnub.
I have commonly used actions assigned to mouse buttons: ``` WheelRight::Send !{Right} Wheelleft::Send !{Left} Xbutton1::Send ^{PgUp} Xbutton2::Send ^{PgDn} +MButton::Send ^w +WheelDown::WheelRight +WheelUp::WheelLeft ```
I have reassigned the function buttons I almost never used, along with some combinations to allow me to almost never use the mouse in certain use cases.
By highlighting text and hitting a hotkey, i get the evaluation of that as a math expression. With functions and memory
Small scripts that I use most days and call from caps menu include: global autocorrect, computer & network performance widgets, emoji/ascii art insert tool, rerun of apps that start on startup, on screen ruler, on screen color eye dropper, mouse wiggler to prevent screensaver, quake-style terminal emulator window for WSL bash, etc.
It also compiles into an exe easily and relaibly, so friends and family struggling with something can get a gui based app, usually a few hundred kbs, for something that is otherwise a big pain to do. A recent example was a mouse tracker for doing presentations, that always gave the mouses' current location.
Some of the stuff I've messed around with is on my Github: https://github.com/rahuldottech/
The language is old, fast and powerful. It isn't quite compiled or interpreted (or maybe it's both), it can run on teeny tiny microcontrollers or be used for scripting.
The best part is, it's a completely different paradigm of how to program from any of the other modern languages I've used. There are no function arguments, and everything is done in reverse polish notation. There's no concept of parentheses in the language (parens are used for comments)
Did not use it yet but I hope it will get more attention.
that being said, I quite enjoy Elixir. It builds on top of Erlang and the language and the community around it are just amazing.