Update
This commit is contained in:
parent
a514183d51
commit
a18fb5a401
1 changed files with 23 additions and 14 deletions
35
esolang.md
35
esolang.md
|
@ -2,22 +2,25 @@
|
|||
|
||||
So called esoteric programming languages (esolangs) are highly experimental and [fun](fun.md) [programming languages](programming_language.md) that employ bizarre ideas. Popular languages of this kind include [brainfuck](brainfuck.md), [chef](chef.md) or [omgrofl](omgrofl.md).
|
||||
|
||||
There is a wiki for esolangs, the [Esolang Wiki](https://esolangs.org). If you want to behold esolangs in all their beauty, see [hello world in different languages](https://esolangs.org/wiki/Hello_world_program_in_esoteric_languages_(nonalphabetic_and_A-M).
|
||||
There is a wiki for esolangs, the [Esolang Wiki](https://esolangs.org). If you want to behold esolangs in all their beauty, see [hello world in different languages](https://esolangs.org/wiki/Hello_world_program_in_esoteric_languages_(nonalphabetic_and_A-M). The Wiki is published under [CC0](cc0.md)!
|
||||
|
||||
Some notable ideas employed by esolangs are:
|
||||
|
||||
- Using images instead of text as [source code](source_code.md).
|
||||
- Doing nothing.
|
||||
- Having two dimensional source code.
|
||||
- Source code resembling cooking recipes.
|
||||
- Trying to be as hard to use as possible.
|
||||
- Trying to be as hard to compile as possible.
|
||||
- Adding randomness to program execution.
|
||||
- Obligation to beg the compiler to do its job.
|
||||
- Using only white characters in source code.
|
||||
- Using only single letter in source code.
|
||||
- Using git repository structure as source code.
|
||||
- Source code resembling dramatic plays.
|
||||
- Using images instead of text as [source code](source_code.md) (e.g. *Piet*).
|
||||
- Doing nothing (e.g. *Nothing*).
|
||||
- Being 2 or more dimensional (e.g. *Befunge* or *Hexagony*).
|
||||
- Source code resembling cooking recipes (e.g. *Chef*).
|
||||
- Trying to be as hard to use as possible (e.g. *Brainfuck*).
|
||||
- Trying to be as hard to compile as possible (e.g. *Befunge*).
|
||||
- Adding randomness to program execution (e.g. *Entropy*).
|
||||
- Obligation to beg the compiler to do its job (e.g. *INTERCAL*).
|
||||
- Using only white characters in source code (e.g. *Whitespace*).
|
||||
- Using only single letter in source code (e.g. *Unary*).
|
||||
- Using git repository structure as source code (e.g. *legit*).
|
||||
- Source code resembling dramatic plays (e.g. *Shakespeare*, actual [real-life](real_life.md) plays were performed).
|
||||
- Solely focus on [golfing](golf.md), i.e. writing the shortest possible programs (e.g. *GoldScript*)
|
||||
- Using [unicode](unicode.md) characters (e.g. *UniCode*).
|
||||
- Being infinitely many languages (e.g. *MetaGolfScript*, each one solves a specific program in 0 bytes).
|
||||
|
||||
Esolangs are great because:
|
||||
|
||||
|
@ -26,3 +29,9 @@ Esolangs are great because:
|
|||
- **They are great exercise in [programming](programming.md)** and design. Simple languages that are allowed to not be useful are potentially good for education as they let the programmer fully focus on a specific idea and its implementation.
|
||||
- **They blend technology with [art](art.md)**, train creativity.
|
||||
- **They are a breath of fresh air** in the sometimes too serious area of technology. Hobbyist and non-commercial programming communities are always great to have.
|
||||
|
||||
## History
|
||||
|
||||
INTERCAL, made in 1972 by Donald Woods and James Lyon, is considered the first esolang in history: its goal was specifically intended to be different from traditional languages and so for example a level of politeness was introduced -- if there weren't enough PLEASE labels in the source code, the compiler wouldn't compile the program.
|
||||
|
||||
In 2005 esolang wiki was started.
|
||||
|
|
Loading…
Reference in a new issue