7,414 karma · joined January 2, 2011
Since 2010 I have been involved with building the Nim programming language, as well as many tools and libraries for it. I have also published a book about Nim called Nim in Action.
These days I'm working on various personal projects- some big, some small. Most recently https://onlyhumanhub.com, https://listifications.app and https://mousetrack.co.uk
Github: http://github.com/dom96
Bluesky: https://bsky.app/profile/dom96.picheta.me
Twitter: http://twitter.com/d0m96
Mastodon: https://mastodon.social/@dom96
Website: http://picheta.me, my contact info is here, always happy to receive emails.
Graphical languages will ultimately have a file system representation which LLMs could easily manipulate. Though incorporating a language feature that is a graphical representation might be different enough to be worth it.
The code it produces is a clear copy of the spec or the existing code that is fed to it as part of the task. It is just following the spec instructions, and some models follow it so closely that they get caught out by the lies/adversarial traps in the spec. Opus 5 is better at seeing through the lies, but it still very much copies from its context window.
> unless coupled with tools and paradigms thatd make it a joy for a human to use, why?
The goal is to make a language that is easy for humans, while being hard for LLMs/coding agents. It's currently on the harder side for humans too. But I'd love ideas of how to better balance this.
The attempt is certainly made to keep it as human friendly as possible, there is definitely room for improvement though. I'd love ideas of how to make it easier for humans while keeping it hard for LLMs.
You're right that it's worth considering in the same way as the letter counting tricks, since coding agents can get around that in the same way. But I would say the letter counting has the advantage that it at least is easy for humans.
I am just as interested in making the language hard for LLMs as for LLMs+coding agents though.
Why do I want more people to see this? Because I want ideas for how to make the language even trickier for LLMs.
> How did you reach that conclusion?
Based on the fact that the task set so far includes fairly simple goals and none of the models scored 100%.
1 - https://github.com/dom96/KillSwitch/blob/main/SPEC.md#abrupt...
* certain constructs designed to trigger safety guardrails in models
* counting of letters in identifiers as a language feature, hopefully triggering model's inability to accurately do so
* the language spec containing hidden meaning and lies (designed to be invisible for humans but not LLMs)
I was curious how well models would do on a brand new language that they haven't seen before and decided to make it even harder for them by creating a language that is specifically designed against them.The benchmark suite I built for it ends up creating a pretty nice leaderboard for models. The standout results are that Opus 5 beats 5.5 and that MiMo V2.6 Pro is the best performing open-weight model. Though none of the models get everything right (and this is for a very simple set of tasks, like hello-world).
I'd be interested to hear if you have thoughts on language features that might break LLMs even more.
I'm much more interested in the benchmarks[1] I have built which do show LLMs not being able to gain full ability to understand it. The benchmarks only give the model access to the interpreter binary and the spec, nothing else and no internet access. I'd also be interested in other's ideas of how to make the language even more resistant to LLMs/coding agents.
Claude Opus 5.5 58.7%
Gemini 4 Argon 47.1%
Claude Fable 5.1 46.7%
Benchmarks: https://bench.killswitch-lang.org/Language info: https://killswitch-lang.org/
I wonder if anyone has crafted a LLM benchmarks list website/github.