Comment by syn-nine
2 months 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.
2 months 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.
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?
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.
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!
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