5 Most Obscure Programming Languages

Page 1 of 6

The 5 most obscure programming languages are truly a sight to behold. Curated by a twisted mind, an artisan of programming language design or someone so bored out of their head that they transcend the concepts and norms of the languages they use, these quirky little phenomena are known in professional environments as “esoteric” languages or esolang. There are mostly no practical uses for them. They’re not what I had in mind when I listed programming as one of the 6 hobbies you only need a computer for, but they’re a good laugh and a challenge.

cyber, people, young, desk, person, man, laptop, website, search, page, secure, program, display, coding, code, adult, cyberspace, symbol, internet, male, binary, data,5 Most Obscure Programming Languages

Andrey_Popov/Shutterstock.com

Programming as we think of it today — lines of code typed into a computer by a person with expertise — is becoming more and more accessible, with visual languages, modular languages, even drag-and-drop programming. People with technical streaks who have a free afternoon can dive into Python or Javascript and come out with a beginning understanding. Children take on Hour of Code activities every year and even teach workshops to their classmates. Programming “boot camps” teach web design or systems administration to adults who want to change careers and join the growing STEM economy. But programming has also always inspired a kind of elitism, where those in the know want to keep their ranks pure and insular.

The concept of taking a programming language and twisting it into a peculiar inside joke is not new. The first and still highly regarded example is INTERCAL, designed in 1972 by Princeton students James Lyon and Don Woods. INTERCAL acts as a parody of the widely used languages of their day (Fortran, COBOL, assembly), using instructions such as IGNORE, FORGET, and PLEASE and using bizarre syntax to initialize and store variables. In many modern languages you type something like “int examNum = 65536” where your value is called “examNum” and the number it represents is 65,536. In INTERCAL you have to write down “DO :1 <- #0¢#256” to get the same result. 

There are many other languages that follow the example and spirit of INTERCAL, and you can’t really estimate the exact amount of weirdness of a programming language, so you’ll have to take my word for the list below. Let’s take a look at it:

Page 1 of 6