A Brief Introduction to Esoteric Programming Languages

preview_player
Показать описание
I wrote this talk for a friend's "Psychology of Programming" class, but it should be accessible to mainstream audiences. It covers "esoteric programming languages" (esolangs), their history, and why I find them so interesting.

Рекомендации по теме
Комментарии
Автор

FAQ

> Where's Malbolge?


> Is Game of Life an esolang?



> Is HolyC an esolang?

Yeah probs

> Is Minecraft Redstone an esolang?

Yes! A lot of games have mechanisms you can use to build programs *inside* the game. Redstone is a good example, as are Factorio circuits and Baba is You blocks. There's no collective term for this category; I personally call them "game-emergent languages".

The big challenge with studying them is that, well, you have to have the game! I've already given Factorio hundreds of hours of my life, I can't afford to download Minecraft, even if it's for "research".

> You mispronounced "Piet".

Piet Mondrian was a Dutch artist, so I'm using the Dutch pronunciation of Piet ("Peet").

> Where's the music from?


> Is that Ida Noyes?

SCAV

hillelwayne
Автор

1:24 "I've only made one esolang in my entire life" "I'm not part of the community" I think you're vastly overestimating how many programming languages the average person creates.

Badspot
Автор

my favorite esolang is babalang, a decently usable language based on the syntax of puzzle game baba is you

oinkymomo
Автор

I am the original author of the “J and GolfScript suck all the fun out of golfing” post. I am not proud of it because I have since enjoyed golfing for reasons other than competing on character count. The posting was entirely borne out of a competitive mindset. I have since posted several answers in which I golfed in languages that are woefully unsuitable for golfing (mostly Unreadable). I would prefer to erase the posting from ever having existed, but I accept that it has historical value now.

Amazing summary of the whole esolangs and codegolfing thing. Great video. Love it.

TimwiTerby
Автор

At my first day of studying computer science at university, every new student got a bag with the name of an esolang written on it. They used it to asign us into introduction tutorial groups. It was the first time I heard of the strange concept of these languages. Mine was 'ArnoldC', a programming language completely consisting of Arnold Schwarzenegger quotes, coding in it is quite fun!

MultiCraftTube
Автор

Brainfuck is not only Turing Complete, it is actually a PURE Turing machine... Turing defined his machine exactly along these lines. Brainfuck only provides a smart short formalism to handle it.

lesfreresdelaquote
Автор

My favorite esolang is Java, a pure Shakespirian language of beauty

Gregzenegair
Автор

The performance of the shakespeare code must have been awesome

purplenanite
Автор

As soon as you talk about using any language for code golf I knew that there'd be someone who make a custom compiler solely to solve that single problem in a single byte. Turn out it's even better.

HazhMcMoor
Автор

It's not lost on me that a person proficient in programming and music, who uses a esolang called Orca also has the surname Whaling.

MechanicalMooCow
Автор

As a math guy I think my favorite esolang has got to be Fractran, which uses a list of fractions and a single input as the entire program. You basically multiply by each fraction in the list until it no longer gives an integer, which becomes the final output. Very fun to play around with and try to figure things out

strafeae
Автор

I really hope someone's made a chef program that calculates pi, with source code that also functions as a recipe for a pie.
(EDIT): Make it a recipe for a raspberry pie, then run the program on a raspberry pi for bonus points.

thelegend
Автор

18:00-ish: Actually, one Unicode character is most likely not 1 byte.

In UTF-8, non-ASCII characters take more space the higher the character’s code point is. Æ takes 2 bytes to store, making “ÆP” 3 bytes long.

The file size is worse in UTF-16 (every character is 2 bytes, unless the char code is U+10000 or larger, which makes it 4 bytes) or UTF-32 (every character is 4 bytes).

cmyk
Автор

"Richard Whaling is an accomplished Orca programmer"

satyrkrieg
Автор

I've seen a few videos on esoteric languages recently but this was the first one that went into any depth on golfing languages. As a very active member of CGSE back in its heyday (PPCG anyone?), having created at least one golfing language and several more general esolangs myself, I really appreciate all the research that went into this video and I feel it was very well explained. It brings me such joy to see an old esoteric hobby of mine being given this type of attention :)

eth
Автор

0 bytes? Pfah. It still needs an interpreter which is some bytes. I can do better. What you need is just memory registers, and in fact specifically for the "is this a prime" question just one memory register capable of storing 1 bit of information, and by that I mean a physical piece of hardware, and that's it, you're done. Let's see how it works:
"Is 2 a prime number?" - the memory register stores either a value that corresponds to true or false. If it's true, then hey, neat, it answered okay. If it's not, no biggie, just give it some time. After a while some cosmic rays or quantum fluctuations or somesuch will hit the register and flip the bit, and then it'll be giving the correct answer. It works the same for non-primes, too, with the correct/incorrect being reversed. With the requirements for correctness and time being as lax as they are, this should actually be good enough.

0 bytes for the program AND 0 bytes for the interpreter AND 0 bytes for the compiler.

abdulmasaiev
Автор

i LOVE perl code golfing. i still remember the most useful program i wrote in perl, and its while(<>)split;chomp; (or something like that). it makes use of a ton of implicit features of perl to read input from stdin and remove all whitespace, then blast it out to stdout. i loved the idea of writing useful code that uses no variables and looks like nonsense

Gunbudder
Автор

golfscript is actually clean af, less computationally interesting but looks like a more accessible variant to guys like APL

slmjkdbtl
Автор

This is genuinely the most entertaining Video i've seen in months, and I have close to no coding knowledge. The absurd quirks of code golfing are just hillarious to me

unavailable
Автор

I recently actually created my own esolang, and I'd like to introduce it to others, but I don't really know where to go with it. It definitely falls (imo) under the "computationally interesting" category

emielfy
visit shbcf.ru