Hacker News new | ask | show | jobs
by margarita_dev 8 days ago
On my list of build it from scratch has always been to build a programming language. So with the help of AI I was able to get it done!

Why did I build it? At work I've seen two major problems with our ai workflows/ skills libraries. There is a lack of determinism when your whole workflow is a markdown file of 100 steps, and markdown skill libraries lack composability. Meaning we violate things like DRY in the all the md files in the skills library.

I built Margarita to allow for markdown and logical operators to exist together, which means you can bring in determinism through code structures when it makes sense, and fall back to llm dynamic code when that makes sense. As an added bonus allows for composable prompts ala React which solve my other gripe with skills libraries being a mash of text everywhere.

Overall I've been getting pretty luke warm responses from Reddit, so I'll probably just shelve it, but it was a blast to make. Got to build code agents for pretty much every llm provider and built my own harness. I would recommend doing that it's a great learning experience.

https://www.margarita.run https://github.com/Banyango/margarita

1 comments

I’ve got a lukewarm IQ, would you mind explaining and example/use case for this?
No worries, I'm pretty bad at describing the benefit of this project.

Let's say you wanted to use Gemma4B to run your workflow, however that model doesn't always do what you want it to. You could write the Margarita code to do the variable tracking, loops, etc and use the llm call where Gemma is able to work better. It's about finding the sweet spot of code vs llm agentic/tool calling.

Can you write that in js/go/etc? sure, but this lets you write it in a much simpler syntax that's much closer to markdown.

There's a few example on the website: https://www.margarita.run/custom-ralph.html https://www.margarita.run/components.html