HNHacker News
TopNewBestAskShowJobs

marcingas

167 karma · joined February 11, 2025

Inventor of autonomous agent orchestration. Co-founder of monk.io

I like making compilers.

submissionscomments
marcingas··on Clojure Hosted on Go
https://github.com/nooga/let-go has been making huge leaps in terms of perf and interop since its launch.
marcingas··on Show HN: I made a Clojure-like language in Go, boots in 7ms
Thanks! Happy that you've noticed :)
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
Thank you for playing!

1/2. There are no docs, in fact, the system is not really fleshed out yet. The core idea is that these runes really stand for lispy threading macro that gets evaluated by the game engine. So for instance `(magic-> fire)` sets the default target (enemy you hit, coordinates you shoot with the bow etc.) of action on fire, `(magic-> (area 2) fire)` is the same but here, the area rune expands the target into a circular zone. `(magic-> (damage 2) self (heal 2))` would damage the target, reset the target to yourself and heal you. The entire world state is chained through these expressions so it should enable some insane spells to be made: travel back in time, swap minds with a door, modify creatures ai etc.

Try looking at the runic weapons you find, they show the spell syntax in the inventory.

3. These are damage ranges.

re gamma, key binds and q: thanks for the feedback, I'll look into improving these.

marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
Good point! Thanks.
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
Interesting idea... maybe it could send terminal bell or tint the screen red at low health?
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
I don't have a numpad so it did not occur to me to add diagonals :D

Good feedback though, I'll add it. Thanks to your 15 year old!

marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
This totally is a bug. Was this recently? I thought I fixed this in WASM version.
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
I'd say don't immediately go into making an ECS and don't sweat about perf too much. You can totally do this in any programming language. This is a good talk about roguelike software design in general: https://www.youtube.com/watch?v=JxI3Eu5DPwE

Tbh the whole channel is a gold mine of inspiration. Also check: https://discord.gg/bgd2GrhR

marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
I wouldn't even dare posting this to a game jam... or HN at this point but someone posted it for me, welp.
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
Love it :D
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
FWIW it's a good fuzz test for the interpreter ;)
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
Yeah that was it, the let-go stdlib changed.
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
This was caused by a stdlib bug in the language, I bypassed it :D
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
fixed
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
I think I fixed it!
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
I see your point but I like to think it's not as sloppy as you'd expect. This one is written in a programming language I've been making since 2021 and it's not a direct Brogue clone despite its looks.
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
Agree, will patch this.
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
Definitely a bug. I'll look into this at some point. Please note that this is not a finished game by any means. If anyone asked I'd call it a tech demo at this point :)
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
Thanks! Please check it out and leave me a star if you like it :)
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
Brogue is insanely well balanced and ingeniously designed. XsofY is a mere tribute ;)
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
Noita was another inspiartion when making this - the inverted power curve is real! Start squishy, become a god, die anyway.
marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
I know, this is intentional :)

I took things I like from Brogue and added my own spin on it.

marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
yeah, this is a Brogue-like. I love Brogue and have been inspired by it. XsofY is not an exact clone but I've studied Brogue C source heavily when making this.

I'll link to Brogue in the README :)

marcingas··on Xs of Y – roguelike that names itself every run. Written in 4kLoC
Author here! Thanks for posting! This game is written in a Clojure-like programming language I've made. So this is a (B)rogue-like in a Clojure-like :)

What I think is interesting is that this game computes the entire world state each tick and does so efficiently thanks to persistent data structures.

To anyone who dared to fire it up: thank you for playing, I'm curious what you think!

marcingas··on Show HN: I made a Clojure-like language in Go, boots in 7ms
Actually, look what I just found https://github.com/tcard/gojure 12 years!
marcingas··on Show HN: I made a Clojure-like language in Go, boots in 7ms
Changing name to Gojure now would only add to the confusion :D
marcingas··on Show HN: I made a Clojure-like language in Go, boots in 7ms
I laughed, audibly :D
marcingas··on Show HN: I made a Clojure-like language in Go, boots in 7ms
Love the demo for 9social! I'm not a user myself but I'm always inspired by the Plan 9 ways :)
marcingas··on Show HN: I made a Clojure-like language in Go, boots in 7ms
I started publishing amd64 and arm (32) binaries for Plan 9 in GH releases. I tested the amd64 one on 9front and everything seems to work. The CLI is not very Plan9-y but I'm happy to make the port more native at some point :)
marcingas··on Show HN: I made a Clojure-like language in Go, boots in 7ms
I think Gloat/Glojure has the best hosted runtime story because of its AOT to Go src pipeline - you can grab anything Go at compile time. OTOH let-go can roundtrip any Go value including structs, functions and channels but it does not allow pulling arbitrary go libs without wrapping them up first - they'd need to be built into the runtime for this.
Page 1 of 2Next →