68 points by glouwbug 11 hours ago | 14 comments

An attempt at a single pass LLVM frontend in ~3000 lines of C without external dependencies, malloc, or an AST. Included are some graphical examples. The IR isn't perfect, and the README touches on one particular downfall

Love this. But no explanations about the language. `defer` for example I didn't see in the 2 `main.n` I checked, and memory management remained a mystery. Would love to see a little more context.

Also, this is actually around 1000 lines.

Brilliant logo. I'm trying to put my finger on what it reminds me of. It tickles my brain.

Plan 9's Glenda crossed with a Peep?

Majin Buu?

This is just an observation, not a criticism of your brilliant project OP. People with sensory processing issues can struggle with reading text when everything is animating around it (as per readme).

These days mainstream browsers offer a "hide distracting elements" feature, which makes hiding gifs trivial, especially in this case.

Yep, the "reader mode" in Firefox is a gift from the Æsir to me. But when I get overwhelmed my first instinct is sometimes to close the tab right away.

I’m not doubting you, but what kind of sensory processing issues are you thinking of? I’m interesting in reading more if you have a link.

Sensory Processing Disorder. I don't want to pick out a specific link since I'm no expert, but if you search for it and pick a reliable source you're on your way.

Many adults suffer from it without knowing. I'm one of them. Well, I was. I still suffer from it but now I know.

clean project, bookmarked it. always nice seeing side projects that actually ship instead of staying in readme-only mode forever.

Looks really neat and minimalist - nice work :-) Big fan of Kishimisu's shader work - nice to see you featuring it on your main page.

What’s the connection to the snake clone or a half-byte?

Doing this in ~3k LOC C without malloc or an AST is honestly pretty impressive. Interested to see how far the IR can scale.

This is seriously impressive. A single pass LLVM frontend in ~3k lines of C with no malloc or AST is kind of wild. The graphical examples were a really nice touch too. Curious to see how far you can push the IR.