- Fennel ist eine Programmiersprache, die auf der Lua-Runtime läuft
- Lua ist eine einfache und zugleich leistungsstarke Programmiersprache, die sich leicht in andere Programme integrieren lässt und Nutzern die Möglichkeit zur Umprogrammierung bietet
- Fennel gleicht die Schwächen von Lua aus und bietet eine klarere Alternative mit weniger Fehlerpotenzial
- Fennel verwendet eine Syntax aus der Lisp-Familie, um die syntaktische Komplexität zu verringern und die Lesbarkeit des Codes zu erhöhen
- Fennel bietet gegenüber Lua Verbesserungen bei Variablen-Neuzuweisung, Tabellen-Notation und der Prüfung von Funktionsargumenten
Was ist Fennel?
- Fennel ist eine Programmiersprache, die auf der Lua-Runtime läuft
- Lua ist eine einfache und zugleich leistungsstarke Sprache, die sich leicht in andere Programme integrieren lässt und Nutzern die Möglichkeit zur Umprogrammierung bietet
- Fennel gleicht die Schwächen von Lua aus und bietet eine klarere Alternative mit weniger Fehlerpotenzial
Vorteile von Lua
- Lua ist eine kleine und schnelle Sprache, die aus rund 19.000 Zeilen C-Code besteht und zu 278 KB kompiliert wird
- Sie bewahrt konzeptionelle Einfachheit und bietet zugleich leistungsstarke Funktionen
- Sie lässt sich leicht in andere Programme integrieren und ermöglicht es Nutzern, Programme umzuprogrammieren
Zentrale Merkmale von Fennel
- Fennel verwendet eine Syntax aus der Lisp-Familie, um die syntaktische Komplexität zu verringern und die Lesbarkeit des Codes zu erhöhen
- Alles wird als Ausdruck behandelt; es gibt keine Mehrdeutigkeiten bei Operatorpräzedenz oder vorzeitigem Rücksprung
- Variablen: Die Verwendung globaler Variablen wird erschwert, um Fehler zu reduzieren, und bei einer Neuzuweisung wird mit
var für mehr Klarheit gearbeitet
Tabellen und Schleifen
- Fennel verbessert die Tabellen-Notation, indem es Arrays und Schlüssel/Wert-Tabellen unterscheidet
- In Schleifen sorgen
for und each für eine klare Syntax
Funktionen und weitere Features
- Fennel unterstützt die Prüfung von Funktionsargumenten und erzeugt einen Fehler, wenn Argumente fehlen
- Es unterstützt Destrukturierung und Pattern Matching, wodurch sich deklarativere Bedingungen formulieren lassen
- Es enthält ein Makro-System, mit dem sich neue Syntaxformen leicht erweitern lassen
2 Kommentare
Hacker-News-Meinungen
Es ist erfreulich zu sehen, dass neue Sprachen auf die Lua-Runtime abzielen
mlua-rssehr empfehlenFennel ist gut
neovim-Konfiguration auf Fennel umgestellt habeNeben Forth, Lisp und Lua ist auch Tcl als kleine Embedded-Sprache erwähnenswert
Ich verstehe den Reiz von LISPy-Sprachen nicht
Fennels Ansatz, nach Lua zu kompilieren und dabei Metaprogrammierungsfunktionen beizubehalten, ist elegant
Fennel ist ziemlich gut
Für Leute, die nach anderen auf Lua aufbauenden Sprachen suchen:
Leute, die sich über Klammern beschweren, haben wahrscheinlich nicht genug Lisp programmiert
Gut für lockere und unterhaltsame Spieleentwicklung
Der MoonScript-Link ist offenbar falsch gesetzt~
https://moonscript.org/