Esoteric Programming Concepts
Nonsense is nonsense. But the study of nonsense? That is a science.
| _) _ \ __| _ \ __| _ \ __| | __| _` | __/ \__ \ ( | | __/ | | ( ( | \___| ____/ \___/ \__| \___| _| _| \___| \__,_|
From ἐσωτερικός — esōterikós — "belonging to an inner circle"....
—(Bootstrapping the Kabbalah funge)
Why does any one program anything? For money, sometimes, but often just for the sheer joy of the thing.
Esoteric Programming Concepts:
- Underhanded programming — programs constructed such that their runtime behaviour is different from their expected behaviour at read-time. The concept is closely aligned with the serious technique of Obfuscation.
- Polyglot programs — programs that are valid programs in more than one syntax.
- Esoteric Programming Languages — programming languages that are created for reasons other than serious use.
- Quine — a program that prints its own source code.
- Code Golf — the competition to write the shortest possible program (measured in bytes) that achieves some specific goal.
- Code Poetry — literature that intermixes classical poetry and computer code.
- Software Art — creating programs that produce works of art.
- Art Games — games that are created as artistic expressions.
- Hello World — the construction of hello world programs is such a fundamental that it can be considered esoteric.
- Foo Baz Bar — the use of these terms is itself esoteric.
- Hidden Programming — code that is purposefully concealed, either by secret societies or befuddled scholars, perhaps in marginalia, within comments, whitespace, within discarded branches of a version control system, in the nachlass of a demented code poet, in undecipherable keyed indices. 438.
- Programming Puzzles and Challenges — for example Project Euler.
- Joke Programs and Prank Programs — programs that are written (or discussed) for non-serious purposes.
- Metaprogramming — programs that read and write programs
- Domain Specific Languages — writing small languages for tiny domains
- The Art of the Compiler — compilers themselves can be implemented for esoteric reasons
- Bootstrapping — the act of compiling a language in its own language is an esoteric (though also practical) notion.
- Virus, Worms, Trojans, Spear phish, exploits and penetration testing software — if you can put aside the malware purposes to which they're sometimes applied, these categories of software are extremely esoteric.
- Cryptography — software for writing and solving codes.
- Artificial Life — computer simulation of life-like processes.
- Heuristics — the application on inexact solutions to impossible problems
_ _ ___ ___ ___ _| |___ __ _(_)___ _ __ / _ \|__ \/ _ |__ / _ |__` | |__ \| '_ \ \__ / __| (_) _| \__ | | | |__) | |_) | |___/\___|\___|__/|___/ |_|_|___/|_.__/
- Wikipedia: Underhanded C Contest
- Wikipedia: Obfuscated Perl Contest
- Wikipedia: Obfuscation
- International Obfuscated Ruby Contest
- Wikipedia: Code Golf
- Wikipedia: Code Poetry
- Wikipedia: Software Art
- Wikipedia: Art Game
- Wikipedia: Hello World
- Project Euler
- StackExchange: List of Programming Challenges
45 163 157 164 145 162 151 143 141