The way we talk to large language models needs to change.

For most people working with LLMs and agents, prompting still looks like English—or a few system instructions, or a RAG pipeline stuffed with retrieved paragraphs. But LLMs don’t think in paragraphs. They don’t need natural language the way we do. And they certainly don’t need verbose context if we can give them structure.
That’s what I wanted to test. And that’s how I ended up building Fact-RAR: a symbolic language for compressing knowledge into something a model can use—not just read, but reason with.
Visit the Fact-RAR repository to learn more or keep reading.
The problems under the problem
We’ve made context expensive. If you want a model to know something, you’re expected to:
- Build a database
- Implement a retrieval pipeline
- Deploy tooling just to get it to recognize what should already be part of the conversation
But most human conversations aren’t 100-turn dialogues. People ask a few things, they get what they need, and they go. So why are we designing everything around longform retrieval?
I started thinking like an old systems guy. What if model context isn’t a limited resource, but an underutilized one? What if we could pack the same knowledge—tightly—and hand it to the model without scaffolding? What if we treated the prompt like memory but packed it using the languages LLMs already know?
Making a language we both understand
I didn’t expect to design a language. I had earlier experiments—messy, functional—but nothing elegant. Building off of the principles that LLMs thikn deeper than we do I decided it was time to take advantage of those underlying latent understandings.
What attributes of languages lend themselves to compressing thoughts?
Subject–verb–object used in Japanese and other East Asian languages encode ideas efficiently and leave more to inference. Take advantage of consistent syntax to seperate ideas like line-by-line logic makes idea seperation easy. Use tags, brackets for grouping, and other fixed structures that programming languages use. Take advantage of short unambiguous words from any language. Don’t worry about pronouns. After a while of refining, we end up with declarative knowledge—dense, precise, and fully parseable.
storm form gulf [warm_water]
if storm intensity>=cat5: city warn!
city evacuate {people:[1e6]}
storm landfall coast +18h
? storm weaken
GPT-4o translated it to:
A storm is forming in the Gulf, driven by warm water. If it reaches Category 5 intensity, the city must issue a warning. One million people are being evacuated. Landfall is expected on the coast in 18 hours. It is uncertain whether the storm will weaken.
LLMs get it—even without the specification
That’s the part that surprised me most. You don’t need to tell the model how Fact-RAR works. Give it a few lines, and it infers the grammar. It unpacks the structure. It reasons with it. Gemini 2.5 Flash understood the symbolic rules. DeepSeek R1 described it as “a controlled natural language for intelligence reporting.”
They see it. They get it. And they can explain it better than most humans can explain English grammar.
A symbolic language for both of us
Fact-RAR wasn’t just made for machines. I built it with humans in mind too. I’m not fluent in Japanese, but I understand its structure. I see how minimal it is. I hear other languages and think in symbols. So I designed a format that lets multilingual thought and compressed logic coexist. If a single kanji expresses something English needs six words to say—and the model understands it—why not use it?
What it isn’t
Fact-RAR doesn’t replace natural language. It doesn’t replace semantic search or structured datasets. It doesn’t speak for nuance or tone. It’s not meant to do any of those things. It represents a layer beneath that. It is a way to express facts, logic, and models that can make sense of both.
What happens next
Right now, Fact-RAR is a GitHub repo with a language specification, a few examples and examples of how LLMs can think. But I hope it becomes something more—something others extend, adapt, and carry forward. If it works, it’s because it’s clear, simple, and useful. And if someone breaks it? That’s how we learn.
We’ve spent years feeding LLMs our language. Maybe it’s time took advantage of all that work for the sake of efficiency.