Esolangs: Unterschied zwischen den Versionen
Aus exmediawiki
C.heck (Diskussion | Beiträge) |
C.heck (Diskussion | Beiträge) |
||
| Zeile 45: | Zeile 45: | ||
=Turingmaschinenbasierte Sprachen= | =Turingmaschinenbasierte Sprachen= | ||
* Befehlende Sprachen sind H-M-S-I-Sprachen (Heftzibah, Mose, | |||
Sem, Isaschar) | |||
* Befehlende Sprachen sind un-wortreich, (dadurch) unlesbar | |||
und deterministisch | |||
* Turingmaschinenbasierte Sprachen basieren auf | |||
Turingmaschinen | |||
* Wir bewegen uns mit einem Pointer auf einem unendlichen | |||
Band, das wir beschreiben | |||
* Es gibt Schleifen, Ein- und Ausgabe | |||
=Stackbasierte Sprachen= | =Stackbasierte Sprachen= | ||
=Mehrdimensionale Sprachen= | =Mehrdimensionale Sprachen= | ||
=Stochastische Sprachen= | =Stochastische Sprachen= | ||
Version vom 17. September 2020, 13:02 Uhr
Esoterische Programmiersprachen
- haben nichts mit Esoterik an sich zu tun
- verfolgen Konzepte fern der konventionellen Programmiersprachen
- sind nicht für den praktischen Einsatz entwickelt worden
- Anwendung z.B. als Proof of Concept
- oft nur Theorien/Ideen ohne wirkliche Implementierung
- können hohen akademischer Wert haben
- sind aber oftmals einfach nur ein Witz
Sie können unterteilt werden in:
Befehlende Sprachen
Befehlende Sprachen sind J-A-J-I-Sprachen (Jochebed, Aaron, Jafet, Isaschar)
- Befehlende Sprachen sind wortreich und deterministisch und verwenden Register
- Befehlende Sprachen können lesbar oder unlesbar sein
- Befehlende Sprachen sind Abwandungen von langweiligen imperativen Programmiersprachen
LOLCODE
Erfunden von:
- Adam Lindsay (Mai 2007)
Designkriterien:
- Sprache muss für LANs verständlich sein
- Syntax muss am Puls der Zeit sein (1337)
Es existieren:
- Compiler und Interpreter
- Syntax Highlighting für vim, eclipse
- LOLCODE.NET
Syntax
Anweisungen werden mit . oder neuer Zeile getrennt
- Kommentare beginnen mit
BTW - Ein Block wird mit
HAIbegonnen und mitKTHXBYEgeschlossen CANHASbindet Bibliotheken einVISIBLEgibt Text aus,GIMMEHliest Text ein- Alle Variablen müssen mit
I HAS AITZ<type> deklariert werden und bekommen einen der drei TypenNUMBAR(Zahl),YARN(String) oderBUKKIT(Array)
Hello World
HAI
CAN HAS STDIO ?
VISIBLE "HAI WORLD!"
KTHXBYE
Turingmaschinenbasierte Sprachen
- Befehlende Sprachen sind H-M-S-I-Sprachen (Heftzibah, Mose,
Sem, Isaschar)
- Befehlende Sprachen sind un-wortreich, (dadurch) unlesbar
und deterministisch
- Turingmaschinenbasierte Sprachen basieren auf
Turingmaschinen
- Wir bewegen uns mit einem Pointer auf einem unendlichen
Band, das wir beschreiben
- Es gibt Schleifen, Ein- und Ausgabe
Stackbasierte Sprachen
Mehrdimensionale Sprachen
Stochastische Sprachen
Seiten in der Kategorie „Esolangs“
Folgende 4 Seiten sind in dieser Kategorie, von 4 insgesamt.