Aktionen

Kategorie

Esolangs: Unterschied zwischen den Versionen

Aus exmediawiki

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 HAI begonnen und mit KTHXBYE geschlossen
  • CAN HAS bindet Bibliotheken ein
  • VISIBLE gibt Text aus, GIMMEH liest Text ein
  • Alle Variablen müssen mit I HAS A ITZ <type> deklariert werden und bekommen einen der drei Typen NUMBAR (Zahl), YARN (String) oder BUKKIT (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.