Show me cool, obscure languages!

There are a lot of programming languages that aren't very well-known now, but may have some interesting features. I keep finding a new one every now and then.

They may have faded to obscurity, they may still be in development, they may serve a small niche, or they may just not have caught on.

Do you know any? Any language that is not too popular and has at least one cool feature is welcome!

I consider these languages to be 'established', but if you have a useful-but-obscure feature, that's welcome:

  • Bash
  • C
  • C#
  • C++
  • Coffeescript
  • Csh
  • CSS
  • Go
  • HTML
  • Java
  • Javascript
  • Julia
  • Kotlin
  • Matlab
  • Objective-C
  • Octave
  • PHP
  • Python
  • R
  • Ruby
  • Rust
  • Scala
  • SQL
  • Swift
  • Typescript
  • Visual Basic
Write your answer…

11 answers

  • prolog - this is a great logic programming language. Prolog along with LISP and Smalltalk influenced Erlang.

  • APL - stands for A Programming Language. Here programming is done with the Mathematical notations.

  • lisp/scheme - these are ultimate functional programming language.

“LISP has been jokingly described as the most intelligent way to misuse a computer. I think that description a great compliment because it transmits the full flavor of liberation: it has assisted a number of our most gifted fellow humans in thinking previously impossible thoughts.” ― Edsger Dijkstra

“Lisp is worth learning for the profound enlightenment experience you will have when you finally get it; that experience will make you a better programmer for the rest of your days, even if you never actually use Lisp itself a lot.” ― Eric S. Raymond

The most powerful programming language is Lisp. If you don't know Lisp (or its variant, Scheme), you don't appreciate what a powerful language is. Once you learn Lisp you will see what is missing in most other languages. ― Richard Stallman

Take Lisp, you know it's the most beautiful language in the world - at least up until Haskell came along. ― Larry Wall

  • haskell - this is the only fully functional language.

SQL, Lisp, and Haskell are the only programming languages that I've seen where one spends more time thinking than typing. ― Philip Greenspun

  • smalltalk - people says that it's the only language which is fully object oriented, and its rebirth is Ruby.

Bonus:

  • There are a lot of awsm esoteric languages too:
  • Brainfuck: You have only 8 instructions and a long single dimension array. Making any programs is very hard, but that's where all its fun lies.
  • befunge: You do programming in sort of 2D grid.
  • There are some more: marioLang, ///(slashes), etc.
  • You can easily make interpreters for any of these languages. Some of them are even Turing Complete.

  • I once saw a video, in which a man created a Turing machine in MS PowerPoint. So, you can also do some sort of programming in PowerPoint.

  • Another person created a game engine in MS Excel, I think he used VBA in it.

Show all replies

go on, APL will get some love.

Reply to this…

Share your programming knowledge and learn from the best developers on Hashnode

Get started

I would be going for ponylang

as you easily can spot it's an actor based language. I am following this language for quite a bit now. Actors are a concept I really do enjoy arxiv.org/vc/arxiv/papers/1008/1008.1459v8... and they built a language around it :D ....

use "collections"

actor Counter
  var _count: U32

  new create() =>
    _count = 0

  be increment() =>
    _count = _count + 1

  be get_and_reset(main: Main) =>
    main.display(_count)
    _count = 0

actor Main
  var _env: Env

  new create(env: Env) =>
    _env = env

    var count: U32 = try env.args(1)?.u32()? else 10 end
    var counter = Counter

    for i in Range[U32](0, count) do
      counter.increment()
    end

    counter.get_and_reset(this)

  be display(result: U32) =>
    _env.out.print(result.string())
Show all replies

Mark yes on a theoretical level I agree although erlang is not a pure actor model since it has types which are not actors. But I learned that to truly understand something one has to leave the meta level and gets his hands dirty ... I think theory is important but I like to test my theories against reality :).

Reply to this…

Dogescript.

shh this is dogescript

such goToTheMoon much doge
  very moon is false
  rly doge is 'a doge'
    moon is true
  wow
wow moon
plz goToTheMoon with 'a doge'

Isn't this just one of those joke efforts that transpile to JavaScript? Do they qualify?

Reply to this…

There is no D language on your list. It's something C++ should be, but failed, i.e. better, object-oriented C. I recommend reading some basic language tour to see what can be achieved if your main goal is not to be backwards compatible to 1980s.

Unfortunately, it's not widely known or used. This is mostly due some bad decisions of language core team some years ago (they were two separate standard libraries in D1, but one of them was killed in D2 and people did not like that). Because of that, it lost some trust from early adopters. Another problem is that it's hard to say to whom is the language addressed - some part of ecosystem is written like C++ while the other more like Ruby.

I hope to see it get some well-deserved visibility some day in the future.

Show all replies

Yeah, I wish I had bet on Rust when I was looking into both of them some time ago ;)

Reply to this…

I learned proraming on an Atari 520-ste. The language I had access to at the time was GFA basic.

I remember dumping the memory in binary to find where the mouse pointer was, and customize it. Yes, yes, it took a couple hours, but I found 2 memory blocks where the 0 and 1 drew the mouse pointer. I wrote my little program to change those 0s and 1s and voila! I had a totally original mouse pointer. It was the good old days...

You can still use GFA basic on PCs nowadays if you look around hard enough.

Reply to this…

Load more responses