Lisp Game Jam ฤดูใบไม้ผลิ 2024

ผลการแข่งขัน Game Jam

  • Lisp Game Jam ฤดูใบไม้ผลิ 2024 สิ้นสุดลงแล้ว
  • มีการส่งเกมเข้าร่วมทั้งหมด 48 เกม ทำสถิติใหม่
  • ผู้เข้าร่วมได้ใช้เวลาเล่นและให้คะแนนเกมของกันและกัน

สถานะการส่งผลงานตามภาษา

  • 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

  • Guile ทำสถิติมีจำนวนผลงานส่งเข้ามามากที่สุดเป็นครั้งแรก
  • ในบรรดาเกม Guile 15 เกม มี 11 เกมที่สร้างสำหรับเว็บโดยใช้ Hoot
  • Hoot เป็นเครื่องมือที่คอมไพล์ Scheme ไปเป็น WebAssembly และพัฒนาโดย Spritely Institute

ความนิยมอย่างต่อเนื่องของ Fennel

  • Fennel เป็น Lisp ที่คอมไพล์ไปเป็น Lua และยังคงได้รับความนิยมมาก
  • เกม Fennel ส่วนใหญ่สร้างด้วย love2d

รูปแบบการใช้งาน Lisp

ใช้ Lisp เป็น “ไอซิ่ง”

  • เป็นรูปแบบที่ใช้ Lisp เป็นภาษาสคริปต์บนโปรแกรมที่เขียนด้วยภาษาสแตติกอย่าง C, Rust เป็นต้น
  • พัฒนาได้รวดเร็ว แต่ต้องอาศัยการผูกกับภาษาสแตติกอย่างแน่นแฟ้น
  • ตัวอย่าง: Fennel + love2d, S7 + raylib

ใช้ Lisp เป็น “เค้ก”

  • เป็นรูปแบบที่พัฒนาเกือบทั้งซอฟต์แวร์สแตกด้วย Lisp
  • ใช้เวลาพัฒนานานกว่า แต่ให้การควบคุมและความยืดหยุ่นมากกว่า
  • ตัวอย่าง: Guile + Chickadee, Hoot + HTML5 canvas

กรณีศึกษา

Fennel + love2d

  • love2d เป็นโปรแกรม C++ ที่มี Lua interpreter ฝังมาในตัว จึงเข้ากันได้ดีกับ Fennel
  • เกม Fennel ส่วนใหญ่ถูกนำไปเผยแพร่บนเว็บโดยใช้ love2d

S7 + raylib

  • raylib เป็นไลบรารี C ที่สามารถจับคู่กับ S7 และนำไปเผยแพร่บนเว็บได้อย่างง่ายดาย
  • GhostHop และ Life Predictor ใช้สแตกนี้

Guile + Chickadee

  • Chickadee เป็นไลบรารีเกมสำหรับ Guile และส่วนใหญ่เขียนด้วย Scheme
  • Turbo Racer 3000 และ Bloatrunner ใช้สแตกนี้

Hoot + HTML5 canvas

  • Hoot เป็นเครื่องมือที่คอมไพล์ Scheme ไปเป็น WebAssembly และใช้ API ของ HTML5 canvas สำหรับการเรนเดอร์ 2D
  • มี 11 เกมที่สร้างด้วย Hoot

สเปกตรัมระหว่างเค้ก/ไอซิ่ง

  • แนวทางแบบเค้กให้การควบคุมและความยืดหยุ่นมากกว่า แต่ใช้เวลาพัฒนานานกว่า
  • โปรเจกต์ Guix เป็นกรณีตัวอย่างที่ประสบความสำเร็จของแนวทางแบบเค้ก โดยใช้ Lisp อย่างเต็มที่เพื่อให้แฮ็กและปรับแต่งได้สูง

ความเห็นของ GN⁺

  • ความยืดหยุ่นของ Lisp: Lisp มีอิมพลีเมนเทชันที่หลากหลาย ทำให้นักพัฒนาสามารถเลือกภาษาที่เหมาะกับความต้องการของตนได้
  • ความง่ายในการเผยแพร่บนเว็บ: เครื่องมืออย่าง Hoot ทำให้สามารถนำเกมที่เขียนด้วย Lisp ไปเผยแพร่บนเว็บได้ง่าย
  • เวลาพัฒนา: แนวทางแบบเค้กให้การควบคุมและความยืดหยุ่นมากกว่า แต่ก็อาจใช้เวลาพัฒนานาน
  • ความเป็นไปได้ในอนาคต: โปรเจกต์อย่าง Pre-Scheme เปิดโอกาสให้พัฒนาซอฟต์แวร์สแตกด้วย Lisp ได้มากขึ้น
  • การสนับสนุนจากชุมชน: โปรเจกต์อย่าง Guile ยังคงพัฒนาอย่างต่อเนื่องด้วยการสนับสนุนจากชุมชน

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น