2 Punkte von GN⁺ 2024-06-03 | Noch keine Kommentare. | Auf WhatsApp teilen

Lisp Game Jam im Frühjahr 2024

Ergebnisse der Game Jam

  • Die Lisp Game Jam im Frühjahr 2024 ist zu Ende gegangen.
  • Insgesamt wurden 48 Spiele eingereicht, was einen neuen Rekord darstellt.
  • Die Teilnehmenden hatten Zeit, die Spiele der anderen zu spielen und zu bewerten.

Einreichungen nach Sprache

  • Guile: 15 (31%)
  • Fennel: 10 (21%)
  • Clojure: 5 (10%)
  • CL: 5 (10%)
  • Racket: 4 (8%)
  • Elisp: 4 (8%)
  • S7: 3 (6%)
  • Kawa: 1 (2%)
  • Owl: 1 (2%)

Guile wird immer beliebter

  • Guile verzeichnete zum ersten Mal die meisten Einreichungen.
  • 11 der 15 Guile-Spiele wurden mit Hoot für das Web erstellt.
  • Hoot ist ein Tool, das Scheme nach WebAssembly kompiliert, und wird vom Spritely Institute entwickelt.

Anhaltende Beliebtheit von Fennel

  • Fennel ist ein Lisp, das nach Lua kompiliert wird, und weiterhin sehr beliebt.
  • Die meisten Fennel-Spiele wurden mit love2d erstellt.

Nutzungsmuster für Lisp

Lisp als „Zuckerguss“

  • Ein Muster, bei dem Lisp als Skriptsprache auf einem in statischen Sprachen wie C oder Rust geschriebenen Programm verwendet wird.
  • Das ermöglicht schnelle Entwicklung, erfordert aber eine enge Kopplung an die statische Sprache.
  • Beispiele: Fennel + love2d, S7 + raylib

Lisp als „Kuchen“

  • Ein Muster, bei dem der Großteil des Software-Stacks in Lisp implementiert wird.
  • Die Entwicklung dauert länger, bietet dafür aber mehr Kontrolle und Flexibilität.
  • Beispiele: Guile + Chickadee, Hoot + HTML5 canvas

Fallstudien

Fennel + love2d

  • love2d ist ein C++-Programm mit eingebettetem Lua-Interpreter und passt gut zu Fennel.
  • Die meisten Fennel-Spiele werden mit love2d ins Web ausgeliefert.

S7 + raylib

  • raylib ist eine C-Bibliothek, die sich in Kombination mit S7 einfach im Web bereitstellen lässt.
  • GhostHop und Life Predictor verwenden diesen Stack.

Guile + Chickadee

  • Chickadee ist eine Game-Bibliothek für Guile und größtenteils in Scheme geschrieben.
  • Turbo Racer 3000 und Bloatrunner verwenden diesen Stack.

Hoot + HTML5 canvas

  • Hoot ist ein Tool, das Scheme nach WebAssembly kompiliert und für 2D-Rendering die HTML5-canvas-API verwendet.
  • 11 Spiele wurden mit Hoot erstellt.

Das Kuchen-/Zuckerguss-Spektrum

  • Der Kuchen-Ansatz bietet mehr Kontrolle und Flexibilität, benötigt aber mehr Entwicklungszeit.
  • Das Guix-Projekt ist ein erfolgreiches Beispiel für den Kuchen-Ansatz und maximiert den Einsatz von Lisp, um eine hohe Hackability zu ermöglichen.

Meinung von GN⁺

  • Flexibilität von Lisp: Lisp bietet durch seine verschiedenen Implementierungen die Flexibilität, dass Entwickler die Sprache passend zu ihren Anforderungen wählen können.
  • Einfache Web-Bereitstellung: Mit Tools wie Hoot lassen sich in Lisp geschriebene Spiele leicht im Web bereitstellen.
  • Entwicklungszeit: Der Kuchen-Ansatz bietet mehr Kontrolle und Flexibilität, kann aber eine längere Entwicklungszeit erfordern.
  • Zukunftspotenzial: Projekte wie Pre-Scheme eröffnen die Möglichkeit, größere Teile des Software-Stacks in Lisp zu implementieren.
  • Unterstützung durch die Community: Projekte wie Guile entwickeln sich dank Community-Support kontinuierlich weiter.

Noch keine Kommentare.

Noch keine Kommentare.