Cyrus Radfar has shipped AI products for over a decade. He keeps seeing the same thing: impressive demos, promising pilots, then gradual degradation and abandonment.
MIT research backs this up. 95% of AI pilots fail to deliver ROI.
Codebases weren't built with agents in mind. An agent reads a function that takes a list and returns a list. It has no way to know about the global config three modules away or the database singleton that behaves differently in production. Every function has an invisible blast radius.
Radfar's solution comes from the 1980s: functional programming. He formalized it into SUPER, five principles for agent-friendly code. Side effects at the edge. Uncoupled logic. Pure functions. Explicit data flow. Replaceable by value.
An agent can modify any function by reading only that function and its type signature. No hidden state to hunt down. No accidental side effects.
This isn't theoretical. Tabnine uses Rust for its local inference engine. Sourcegraph built Cody with Rust for deterministic code analysis. Hugging Face migrated its tokenizers library to Rust to fix non-determinism. Nubank runs one of the world's largest Clojure codebases for AI-driven features.
Want agents that work reliably? Build codebases that don't fight them.