Birth of StopLang – A Useless Language With a Very Specific Purpose

So, I wanted to implement a garbage collector.
Cool idea, right? Memory management, pointer wizardry, existential dread—the whole buffet.
But then came the realization™️:
“Uhhh, how the hell do I even test this thing?”
You can’t really test a garbage collector in a vacuum (though that would collect garbage nicely). I needed some code, some variables, some actual garbage. Something to allocate memory, throw things around, and see if the collector actually does its job—or rage quits.
Option A: Plug it into an existing language
Like a real adult. Take some interpreter written in C, rip out its memory management, and bolt mine in.
But nah.
That way lies integration hell.
Do I look like someone who enjoys linker errors and segfaults from code I didn’t write? (No. No, I do not.)
Option B: Just build my own language
Like an unhinged adult.
So that’s what I did.
Okay so here’s the tea:
- 🛠️ It’ll be compiled, because I want my errors during dev time, not as jump scares during runtime.
- ⚙️ It’s in C, because:
- C++ is too friendly (a little too comfy, not enough pain).
- Assembly is too sadistic (I still like my sanity).
- C is that spicy sweet spot of power and pain.
We're going full DIY on this one. Think of it as a language that’s just smart enough to test our GC, but dumb enough that we don’t have to spend years writing a parser.
Now, we needed a name. Something iconic. Something that tells you what this language is really about.
And so, I give you:
🛑 StopLang
Because:
- It’s the opposite of Go. It doesn’t want to “go” anywhere.
- It’s useless, and proudly so.
It’s not fast.
It’s not smart.
It’s barely a language.
But it’s ours, and it will be just good enough to build and test garbage collectors.
Bonus: It will be easier to read than Brainfuck, and more coherent than Brainrot. (Which honestly sounds like medical conditions at this point.)
📌 What’s Coming Next?
This blog would turn into a research paper if I tried to cover everything here. So we’re breaking it down:
- This post: Why StopLang exists and how I got here (hello chaos)
- Next post(s): Building the core of StopLang—basic syntax, data structures, compiler setup, maybe a sad little REPL
- Then: Plugging in our garbage collectors and watching them either work… or work once and then segfault spectacularly
If you’ve read this far, bless your soul.
Thanks for bearing with the puns, the rambling, and the “what if I just wrote a language for no reason?” energy.
Stay tuned, fellow code gremlins.
More nonsense incoming soon. 😈🧹
Subscribe to my newsletter
Read articles from Sunny directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
