#badlang
A while ago I saw some amazing threads by @katef.bsky.social on "The Bad Place" where they advocated for printing the internal state of your compiler with graphviz. I was very impressed and been ever since trying to incorporate it in my work. It's back now on the self-hosted compiler #badlang #PLDev
January 25, 2025 at 1:29 PM
Fun stuff is happening

#playdate #pldev #badlang
February 5, 2026 at 4:28 PM
fun times with cellular automata, on my own programming language, using raylib
#PLDev #badlang
January 13, 2025 at 9:48 AM
Do you ever wake up and think? "wouldn't it be fun to make a sample player for the #PlayDate console in your own programming language?" #PLDev #badlang
February 5, 2026 at 8:57 AM
We've have Turing completeness on the the C backend, exciting times!

#PLDev #Badlang
January 11, 2025 at 12:48 PM
Got far enough on my compiler today to be able to write the game of life using raylib. I'm so excited to be able to just link to libraylib.a and have this work without any other dependencies (the magic of compiling to C!). thanks @raysan5.bsky.social for making this amazing library!

#PLDev #badlang
January 12, 2025 at 6:43 PM
The lexer written in my programming language can now tokenize itself. Self-hosting on its way!
January 24, 2025 at 1:31 PM
For a few weeks I've started working on my compiler and building some fun stuff I'd like to share soon. In the meantime, with some small adjustments, now I can run #badlang on the Playdate, calling code from C, and viceversa. It's good to be back!
November 5, 2025 at 1:48 PM
Typechecking is coming along so I added pretty-printing for symbol tables.
January 30, 2025 at 7:50 AM
Work continues on the self-hosted implementation. A good chunk of the typechecking is done and am currently working on compilation to a linear IR that uses different basic blocks per function but is not on an SSA form. Trying to keep things simple for now.

#PLDev #Badlang
February 6, 2025 at 12:58 PM
My self-hosted parser can now fully parse itself

#PLDev #badlang
January 27, 2025 at 6:46 PM
a while back I used to use graphviz for everything, symbol tables, graphs, structs. tbh I took it a bit too far, some tasks are still better suited for text, but I loved the aesthetics of it haha

merveilles.town/@bd/11277789...
Bad Diode (@bd@merveilles.town)
Attached: 1 image badlang™ step 26: added semantic analysis for user defined structs. It's still incomplete but this typechecks as it should. I spend way more time on this that I care to admit, allow...
merveilles.town
January 25, 2025 at 2:32 PM
I'm also working on my own programming language (badlang), today I did a first implementation of typechecking for polymorphic struct/union types

#PLDev
January 10, 2025 at 9:10 AM
I have imports on my language... I may have gotten a bit ahead of myself and ported most of Raylib's binding by hand... Definitely better to write some scripts for porting bindings in the future lol.

git.badd10de.dev/bdl/tree/exa...

#PLDev #badlang
raylib.bad\examples - bdl - Bad Diode's Lisp. Experiments with interpreters, compilers and VMs
git.badd10de.dev
January 19, 2025 at 12:22 PM
Still lots to do, but the self-hosted parser is shaping up!

#pldev #badlang
January 26, 2025 at 6:26 PM