Settings

Theme

Langjam-Gamejam Devlog: Making a language, compiler, VM and 5 games in 52 hours

github.com

107 points by suioir 6 days ago · 10 comments

Reader

citbl 15 hours ago

I've been amazed by this jam. It's like bigger and better every year (in terms of jams going deeper and deeper).

I imagine we're 5 years away of "Make your own OS, language, compiler, VM and game in 12 minutes, 36 seconds. Extra points if you gave yourself a stroke."

  • Waterluvian 14 hours ago

    If you want to make a game about apple pie from scratch…

    • falcor84 12 hours ago

      That could actually be really cool:

      Create a simulation of a universe with arbitrary physical laws, have it evolve sentient life, and submit the first video game they develop which matches the theme. The theme this year is "rotations". You have 48 hours. Go.

cmrx64 10 hours ago

A decade ago I ran several “seven hour roguelikes”, https://web.archive.org/web/20160321153532/http://people.cla... is the documentation from the first one.

The first year I spent six hours writing one of the first ecs crates in Rust and then an hour turning it into a game. lots of fun! you can search “7HRL” on github to find the historical participants not too ashamed to publicize their code at the end. A few dozen people enjoyed this.

syn-nine 8 hours ago

author here, thanks for reading, happy to answer any questions you have!

edit: in before anyone asks: no AI (LLMs/GenAI etc) was used at all in this project.

  • amarant 5 hours ago

    How pleased are you with garlang? What's the dev experience like with your new language? Given the time constraints I imagine there are a few rough edges, but it's clearly possible to make games ridiculously fast with it! Any language feature that you are particularly excited about?

    • syn-nine 4 hours ago

      Thanks! I really like how I combined the parameter stack and scratchpad from FORTH with the call stack from x86 style assembly. It makes it really easy to get multiple return values from functions. I also really like how lists and the loadat and storeat bytecodes turned out. It became a really elegant way to chain list indexes by pushing and popping addresses from the parameter stack. This was my first use of the scratchpad pattern and I felt like it was a very nice solution to returning temporarily allocated memory up the call chain / up scope without requiring memory management. I was also really pleased with how the new() keyword recursively deep copies something out of scratch to the heap.

      It could use some cleanup though as the speed of the jam left little time to think about doing things in a sustainable way. I'm not sure I like the var keyword as I typically prefer to be explicit about types.

      It really turned out pretty powerful though and I think it could be really useful as a library for game scripting.

      • amarant 3 hours ago

        That's really cool! Actually sounds like it could be worth the effort to clean it up and bring it to a stable release! I like the idea of a language made from the metal up with game dev in mind!

  • syn-nine 7 hours ago

    if you want to try out the Knots game that I submitted to the jam you can find it here:

    https://syn9dev.itch.io/knots

homarp 12 hours ago

previous discussion of the jam https://news.ycombinator.com/item?id=46097671

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection