frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Start all of your commands with a comma

https://rhodesmill.org/brandon/2009/commands-with-comma/
161•theblazehen•2d ago•45 comments

OpenCiv3: Open-source, cross-platform reimagining of Civilization III

https://openciv3.org/
674•klaussilveira•14h ago•202 comments

The Waymo World Model

https://waymo.com/blog/2026/02/the-waymo-world-model-a-new-frontier-for-autonomous-driving-simula...
950•xnx•20h ago•552 comments

How we made geo joins 400× faster with H3 indexes

https://floedb.ai/blog/how-we-made-geo-joins-400-faster-with-h3-indexes
123•matheusalmeida•2d ago•33 comments

Jeffrey Snover: "Welcome to the Room"

https://www.jsnover.com/blog/2026/02/01/welcome-to-the-room/
21•kaonwarb•3d ago•19 comments

Unseen Footage of Atari Battlezone Arcade Cabinet Production

https://arcadeblogger.com/2026/02/02/unseen-footage-of-atari-battlezone-cabinet-production/
58•videotopia•4d ago•2 comments

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
232•isitcontent•14h ago•25 comments

Monty: A minimal, secure Python interpreter written in Rust for use by AI

https://github.com/pydantic/monty
225•dmpetrov•15h ago•118 comments

Show HN: I spent 4 years building a UI design tool with only the features I use

https://vecti.com
332•vecti•16h ago•144 comments

Hackers (1995) Animated Experience

https://hackers-1995.vercel.app/
494•todsacerdoti•22h ago•243 comments

Sheldon Brown's Bicycle Technical Info

https://www.sheldonbrown.com/
383•ostacke•20h ago•95 comments

Microsoft open-sources LiteBox, a security-focused library OS

https://github.com/microsoft/litebox
360•aktau•21h ago•182 comments

Show HN: If you lose your memory, how to regain access to your computer?

https://eljojo.github.io/rememory/
289•eljojo•17h ago•175 comments

An Update on Heroku

https://www.heroku.com/blog/an-update-on-heroku/
413•lstoll•21h ago•279 comments

Vocal Guide – belt sing without killing yourself

https://jesperordrup.github.io/vocal-guide/
32•jesperordrup•4h ago•16 comments

Was Benoit Mandelbrot a hedgehog or a fox?

https://arxiv.org/abs/2602.01122
20•bikenaga•3d ago•8 comments

PC Floppy Copy Protection: Vault Prolok

https://martypc.blogspot.com/2024/09/pc-floppy-copy-protection-vault-prolok.html
63•kmm•5d ago•7 comments

Dark Alley Mathematics

https://blog.szczepan.org/blog/three-points/
91•quibono•4d ago•21 comments

How to effectively write quality code with AI

https://heidenstedt.org/posts/2026/how-to-effectively-write-quality-code-with-ai/
258•i5heu•17h ago•196 comments

Delimited Continuations vs. Lwt for Threads

https://mirageos.org/blog/delimcc-vs-lwt
32•romes•4d ago•3 comments

What Is Ruliology?

https://writings.stephenwolfram.com/2026/01/what-is-ruliology/
44•helloplanets•4d ago•42 comments

Introducing the Developer Knowledge API and MCP Server

https://developers.googleblog.com/introducing-the-developer-knowledge-api-and-mcp-server/
60•gfortaine•12h ago•26 comments

I now assume that all ads on Apple news are scams

https://kirkville.com/i-now-assume-that-all-ads-on-apple-news-are-scams/
1070•cdrnsf•1d ago•446 comments

Female Asian Elephant Calf Born at the Smithsonian National Zoo

https://www.si.edu/newsdesk/releases/female-asian-elephant-calf-born-smithsonians-national-zoo-an...
36•gmays•9h ago•12 comments

Where did all the starships go?

https://www.datawrapper.de/blog/science-fiction-decline
16•speckx•3d ago•6 comments

I spent 5 years in DevOps – Solutions engineering gave me what I was missing

https://infisical.com/blog/devops-to-solutions-engineering
150•vmatsiiako•19h ago•69 comments

Understanding Neural Network, Visually

https://visualrambling.space/neural-network/
288•surprisetalk•3d ago•43 comments

Why I Joined OpenAI

https://www.brendangregg.com/blog/2026-02-07/why-i-joined-openai.html
150•SerCe•10h ago•142 comments

Learning from context is harder than we thought

https://hy.tencent.com/research/100025?langVersion=en
186•limoce•3d ago•100 comments

Show HN: R3forth, a ColorForth-inspired language with a tiny VM

https://github.com/phreda4/r3
73•phreda4•14h ago•14 comments
Open in hackernews

Langjam Gamejam: Build a programming language then make a game with it

https://langjamgamejam.com/
132•birdculture•2mo ago

Comments

amarant•2mo ago
Holy cow the diversity of skill sets required to do this is insane. I'll be very impressed at any Devs who takes this on solo.
cardanome•2mo ago
I think you can make it as challenging or not challenging as you want. Just implement a simple Forth or Lisp in Lua and make a cute little game with Love2d or even just a simple text game.

Maybe I expect too much from people but like at least being able to write a simple tree-walking interpreter is basic computer science education and who hasn't tried to make a game at least once?

The problem is more that some people just like sharpening the saw and some people like cutting down trees. Both are valid. Some people get really into programming languages and tooling but never ship any product or vice versa. But people need to be skilled enough to do both.

amarant•2mo ago
I think I might be the one to expect too much on second thought.

Making a language and a game is one thing, making a good language and a good game is something else entirely.

Very few people can do either of those on their own, let alone both.

sunrunner•2mo ago
The crossover of language design/implementation and game development made me assume this was either a Jonathon Blow (Jai, Braid, The Witness) or Bob Nystrom project (Game Programming Patterns, Crafting Interpreters, 'Is There More to Game Architecture than ECS?' [1]).

Either way, given the time constraints and requirements I'm expecting a lot of text adventures and rogue-likes.

[1] https://www.youtube.com/watch?v=JxI3Eu5DPwE

adamhartenz•2mo ago
A programming language could be as simple as a domain-specific-language done in a JSON format. It could just abstract away a bunch of thing, and most of the logic would just be in your "game engine".
pennomi•2mo ago
Easy, create a DSL that represents dialogue in a visual novel style game. Add some branching, looping, and variables, maybe some labels for jumping to and you’re good. Tada! You’ve basically reinvented Ren’Py.
Razengan•2mo ago
I've been wondering about this for some time, that how there really isn't a language that's made from the ground up just for coding gameplay logic.

Like we have SQL for databases, Julia etc for maths etc, but gamedevs still have to plod along in general-purpose languages with archaic conventions established 50 years ago by people who had nothing to do with games.

I'd love something with the syntax of GDScript and the features of Swift, with special constructs just for gameplay logic, which is often a hybrid between inheritance and composition, static and dynamic, declarative and imperative.

I've been toying with what would be the ideal syntax (for me), but I don't have the brains to actually make a language :')

reactordev•2mo ago
SQL is deterministic. Julia is deterministic. Gameplay is not deterministic. Constraints are arbitrary and there are no rules.
formula1•2mo ago
I think magic the gathering set a pretty good standard.
reactordev•2mo ago
For Magic the gathering, sure. Not for Eve-Online. Not for Counter-Strike. Not for World of Warcraft. Not for Minecraft. Games are too diverse to limit yourself to a DDL.
macintux•2mo ago
Well, if you’re interested in text-based games, there have been custom languages for a long time.

https://www.linusakesson.net/dialog/craverly/craverly_side_b...

Also LPC for muds, although that definitely wasn’t built from the ground up.

Balooga•2mo ago
There is OpenGOAL[1]. A re-implementation of the language that Naughty Dog used to created Jak and Daxter.

[1] https://opengoal.dev/

Scramblejams•2mo ago
Check out Jai, apparently if you ask nicely its author will let you use it. Unofficial docs here: https://pixeldroid.com/jailang/
Razengan•2mo ago
Jai is just a C-like with manual memory management etc.

I mean something that is divorced from hardware and just focuses on gameplay logic; let the engine continue to be in C++/Rust/whatever.

meheleventyone•2mo ago
PuzzleScript is the closest to this I can think of. Hyper specialised though.

https://www.puzzlescript.net/

zzo38computer•2mo ago
In my opinion, Free Hero Mesh is better, although each has its own advantages and disadvantages compared with the other(s).

(There are also some variants of PuzzleScript, which add a few extra functions.)

zzo38computer•2mo ago
There are many that are specialized for different uses in games, such as:

- ZZT-OOP

- MegaZeux Robotic

- ZIL

- MESH:Hero

- Free Hero Mesh

- Super ZZ Zero

- OHRRPGCE HamsterSpeak

(There are probably a lot more that I had missed)

All of these are specific to the specific kind of games being made with them, though; different kind of games will require a different kind of logic.

MESH:Hero is specific to a specific kind of puzzle games, and Free Hero Mesh is a FOSS clone of MESH:Hero with a different syntax and more features.

xorcist•2mo ago
Don't forget: SCUMM
BSTRhino•2mo ago
I've actually spent the past 3 years making Easel (https://easel.games) specifically for gameplay logic. It's got behaviors as a first-class language construct, ownership and context is implied hierarchically, it's concurrent and event-driven to match how game worlds work, and the multiplayer is automatic because it's built into the fabric of the programming language.

It also feels like a declarative language because of the high-level constructs, but it is actually imperative because (in general) things get executed in the step-by-step order you specify, which I think is important because games are full of sequences.

It's been a lot of work but also a lot of fun! My aim is for this to be a great next step after Scratch for people learning to code but also a good model for how a more advanced game-making programming language could work in the future!

Razengan•2mo ago
This looks promising. How come I hadn't heard of it??

My own ideas for an ideal syntax included keywords like "on" instead of "func" etc. (i.e. be totally event/signal driven)

Taking a look!

BSTRhino•2mo ago
Haha I wish I knew how to reach more people like you!

Yeah exactly! I think the event-driven/signal-driven way of coding is the high-level way of coding a game, and so with Easel I was trying to make a game programming language where that is first class. It's different from the frame-by-frame state machine kind of model that is used by a lot of other game engines, and I find it's super productive.

I know that I am unable to single-handedly compete with Godot or Unity so to make the scope achievable it's aimed at being a good 2D programming language for learners at this point. There's a surprising amount of similarity between Scratch and Easel because Scratch is also event-driven and concurrent like Easel. We often send our learners to Python or JavaScript and I've seen that they just lose engagement. The difference is bigger than just going from visual to text-based coding. Easel makes the gap closer and so I am hoping it'll be a great next step from Scratch into text-based coding.

But I also hope Easel can add to the conversation and interest people like you as a example of how game programming languages could be made. One day I hope to actually bring Easel to more serious games, maybe bringing it to other engines or with its own 3D engine. One reason why I am leaning on making my own 3D engine (long term goal) is that in Easel, the multiplayer is automatic and it would be difficult to bring that to another engine.

In either case it's great to meet someone who has been thinking about this kind of problem like I have.

Razengan•2mo ago
> I know that I am unable to single-handedly compete with Godot

You could package your language as a GDExtension for Godot.

I'm planning my fantasy language from the top-down, syntax first: how it would look like to users/developers to use it, then think about how to implement that language if ever :')

Right now I'm just fiddling with a extension for VSCode/ium to syntax highlight the hypothetical language, then I'll put it up on a brainstorming repository on GitHub.

BSTRhino•2mo ago
Yep, it's definitely a possibility down the line.

Maybe a 7-day gamejam is a great way to explore your ideas!

nextaccountic•2mo ago
If I understand correctly, the language is not open source, right? Not even the interpreter?

That's a hard sell

BSTRhino•2mo ago
tldr I plan to make the singleplayer at least source available, but keep all parts related to multiplayer/persistence/hosting (anything that requires a server) closed for a few practical reasons:

1. Cheating: There has to be some security by obscurity because in Easel, multiplayer and persistence are actually client authoritative. Why client authoritative? We don't simulate on the server to keep costs down. Why keep server costs down? Easel will never run ads because it is aimed at teenagers/children and we want to be able to vet all content shown on Easel. Without ads, combined with the fact that we want Easel to be free for teenagers, the budget is extremely tight. I would rather die than get VC funding because they would force Easel to put profit before principles, so we have to keep the costs low.

2. Development speed: Easel has changed a lot over the past 3 years, and been constantly refactored over and over again. If you look at Easel now, you might think "I could make that" but when I made it, I didn't have any reference points, so I had to iterate and iterate on a lot of things from first principles and take a lot of wrong turns. My GitHub history shows me adding about 2 million lines of code even though the project is about 150000 lines, which shows how much it has been written and re-written. Anyone who tried to contribute would just get in the way at this point. I want to spend my days coding rather than arguing with people on GitHub.

3. Survival: I don't want someone else to take all the code to make a competing platform which does not have the same principles (like putting profit ahead of child safety and showing ads). My dream is for Easel to be a place where most players are makers, like Scratch, except with more actual real games on it because the engine has built-in game features like a physics engine, particle systems and multiplayer. Like Roblox except actually beginner-friendly coding. I have a vision quest and I want Easel to fund Easel so I can make Easel.

I am looking to open source Easel but only in a way which solves the above 3 problems. The way that I have come up with is that open sourcing the singleplayer parts is the best compromise between everything. It just requires stopping development to splitting it all out, and having all the code split out will mean development would be slower, and I am prioritising development speed at the moment. The engine is not complete enough yet and missing a bunch of key features which would stop numerous games from being made. So maybe in a couple of years I will have the bandwidth to look into this. But I actually want to open source Easel, but I just need those problems solved.

macintux•2mo ago
Seems ideal for those grumbling about Advent of Code’s shortened schedule this year.
riffraff•2mo ago
the time frame matches too, 14 to 20 gives you one day of rest after the last AoC, and then three more days to buy presents before Christmas that you forgot to co :)
kderbyma•2mo ago
I have been doing something minor - not full language - but I am working on a couple DSLs for my game engine. The games themselves are interpreted by my engine console - then transpiled to webgl and JavaScript.

The DSL is for cutscenes and scripting dialogues and movements and transitions.

The idea was to have a screenplay like language that would run in my game engine so I can write the scenes like a script instead of like code.

—

Then I am using a LUA like subset for the core game logic.

I don’t think I would want to have the entire thing written in a custom language though, as that seems unnecessary

toisanji•2mo ago
Ok would like to learn more about what you have been building, can we talk? I have thought of similar ideas.
munificent•2mo ago
Oh my God, someone has discovered my kryptonite.
BSTRhino•2mo ago
Your book is awesome!
azhenley•2mo ago
I’m going to blog about whatever I end up building. I hope some of you will join me :)
BSTRhino•2mo ago
lol, I spent 3 years coding a game programming language...
WhyOhWhyQ•2mo ago
Any recommendations on books / resources to read in order to participate as a beginner (language creator that is..., not beginner with programming games)?
BSTRhino•2mo ago
Crafting Interpreters!
shoo•2mo ago
Jack Crenshaw's 1988-1995 series Let's Build a Compiler [1]

Graydon Hoare's 2002 talk `"One Day Compilers" or how I learned to stop worrying and love static metaprogramming` [2] (implements a compiler for a DSL that's a subset of makefile syntax in < 400 lines of code using ocaml toolchain)

edit: on second thoughts, aiming to ship a game in a novel _compiled_ language in a 7 day language+game jam is probably a lot more optimistic than aiming for an interpreted language.

[1] https://compilers.iecc.com/crenshaw/

[2] https://www.venge.net/graydon/talks/

WhyOhWhyQ•2mo ago
I'm halfway through Crenshaw!
ifidishshbsba•2mo ago
Racket for sure, it goes straight to the heart of everything. You want simple macro compilers so you can see how simple it all is, not being confused by complex interpreters which totally obscure what is being done here.
munificent•2mo ago
Heh, I guess you could read my two books, "Crafting Interpreters", and "Game Programming Patterns". :)
WhyOhWhyQ•2mo ago
Well this is certainly cool! Your first book has been on my reading list. I'm cracking it open tomorrow!
shoo•2mo ago
What is a minimal-ish programming language that could be used to express some interesting class of games?

It's easy to think of pathologically trivially useless "languages" that could "make a game". E.g. the single instruction language where the instruction P is defined to mean "execute a game of pong". Or a zero instruction language where the empty program is defined to mean "execute a game of pong".

Also easy to think of existing minimal programming languages that could technically be used to implement games. E.g. brainfuck is a beautifully minimal language with only 8 instructions, supporting character IO - so you could make a text based adventure game with it, but this would be unpleasant and there isn't anything about brainfuck that makes it suited to game dev.

Another idea could be to have a non Turing complete language where you declare data for entities etc to be executed by some game engine/runtime. E.g. it might be possible to define a language for declaring data & entities to express a few different but similar games (e.g. spanning pong --- breakout, or one specialised for simple card games, or so on).

ifidishshbsba•2mo ago
Let D be the language used to express the gameplay, C be an implementation of a compiler for D in a language L. You want to minimise the length of D + C across all languages L. This gives you a unique language D (a DSL) for each game which is the most semantically dense and expresses the essence of the problem domain the best.

The language or languages D is discovered (not designed) and is the essence of the problem, will never change and is true in all universes. Any general purpose programming language solving the same problem (a solution using L) will have a structure of D with a bunch of boilerplate and design patterns (design pattern = boilerplate = hints at a special form in D).

Using a hierarchy of these minimal languages D with one compiling into another for each little problem is the only way to get ‘clean code’ free of boilerplate.

Software engineering is minimising D + C for all L

binary132•2mo ago
I’m hearing FORTH, but surely that’s not what you meant to say. :)
ifidishshbsba•2mo ago
I like to lisp but it might be time to finally learn FORTH :)
torginus•2mo ago
I think building an interpreted language with a basic but usable feature set - arrays, structs, expressions, control flow, functions etc. - is totally doable in a couple of days if you dont spend a lot of time ruminating on syntax and semantics.
keithnz•2mo ago
a variation of lisp is SUPER easy to do, give it some primitives to graphics/sounds/inputs and away you go
munificent•2mo ago
If I had a spare week that I wanted to spend on this game jam, I would be making a dynamically typed language and an interactive fiction game.

Dynamic types make it much easier to whip up a little language and interpreter. Interactive fiction doesn't have any difficult performance requirements so even a very slow interpreter is still probably fast enough. And IF doesn't require graphics or any kind of tricky bindings. Just printing to a terminal.

copx•2mo ago
This is not as hard as it sounds as long as Forth and Lisp variants qualify.

You can write a basic Forth or Lisp interpreter in a day.

jaggederest•2mo ago
It's even easier if you implement your Forth or Lisp interpreter in Forth or Lisp (both map to each other surprisingly well). Metacircular evaluator and be there.
FjordWarden•2mo ago
Challenge accepted, but no way I can finish this in 7 days even with a head start of a few months.
adamhartenz•2mo ago
So you are not accepting the challenge then. Sounds like you are over thinking or over scoping the problem.
mcpeepants•2mo ago
or just keenly aware of their own strengths, weaknesses, and time budget for this? the leap to “over scoping” is wild.
adamhartenz•2mo ago
I was just meaning, that if you think you can't do it in the timeframe, then you are making it too big for yourself. The rules are so loose that you could literally make a programming language that has a single command `run_my_awesome_game()` and fully impliment the logic etc in your language and library of choice. Obviously a trivial/useless example, but take it up a few notches and you could have something interesting. A DSL inside JSON can be very powerful.
suioir•2mo ago
What if you've already been working on a language for a while and want to use it instead of making a new one just for this?
ModernMech•2mo ago
I would say the spirit of a jam is to start from scratch, but using parts and techniques you're used to is fine. e.g. repurpose your number parser but not the entire grammar and runtime. A lot of being successful at a jam is doing the right prep work so you're not making decisions and figuring things out at jam time.
pixelmelt•2mo ago
If only it wasn't finals week
kode-targz•1mo ago
right?
empressplay•2mo ago
Use Logo! Straight-forward parser. Turtles make game elements easy. Write it in Go for simple multi-threaded agents.