Hard disagree. The best language for AI is one that has strong compiler soundness (ie type system) that can reject incorrectness and provide feedback as to correctness to refactors. One can substitute with property based tests but it won’t be as good as soundness + pbt. Speaking from experience here… <a href="https://ghuntley.com/oh-fuck" rel="nofollow">https://ghuntley.com/oh-fuck</a> && <a href="https://ghuntley.com/stdlib" rel="nofollow">https://ghuntley.com/stdlib</a><p>I do however agree that there’s langs that are not as suitable for LLMs (Java) due to their verbosity (and engineers sort classes onto filesystem like a filing drawer. LLMs work best when everything for a domain, including tests, is in a single file).<p>Increased verbosity of the grammar does yield token wastage/ineffectiveness.<p>Having said all that - compile time matters HEAPS. The faster you can optimise your compile time the more loops (throwing pancakes at the wall) you can do. Here’s where it gets crazy though, one can loop a verbose compilation w/metrics back into the LLM and ask the LLM to propose improvements on how to make the compile faster. It works…
This reminds me of that midwit meme,<p>Far left: Just build better models<p>Midwit: Nooo you need succict languages to maximise the token efficiency, succinctness is a form of compression so that you can ...<p>Far right: Just build better models
My preferred language to build apps is Ruby, and I'm still more likely to pickup RoR as a backend. But I can't see if winning in the AI generation.<p>I never recommend it with LLMs, because there is a definite context window and attention problem with a lot of languages, but Type-safety + being pre-trained on strong typing, makes any issues with context sizes moot. The latest generation of AI dev tools, are getting really good at solving problems using the type errors that it creates.<p>Also a lot of Rails niceties can be achieved in languages like Typescript with patterns such as decorators, which do an amazing job DRYing things up and reducing those contexts.
Why would working with AI need Rails?<p>I would prefer to bet on Mojo[0].<p>> The Mojo programming language was created by Modular Inc, which was founded by Chris Lattner, the original architect of the Swift programming language and LLVM, and Tim Davis, a former Google employee. Intention behind Mojo is to bridge the gap between Python’s ease of use and the fast performance required for cutting-edge AI applications.<p>[0] <a href="https://en.wikipedia.org/wiki/Mojo_(programming_language)" rel="nofollow">https://en.wikipedia.org/wiki/Mojo_(programming_language)</a>
There is very little Ruby has going for itself. People despair at Python's speed of a sloth on tranquilizers and Ruby is <i>even slower</i>, with a community the size of Lua. When it comes to people considering languages for anything it's usually not even on the list.<p>If anything, using LLMs means we can use less language abstraction for more speed, and have them write Cpp or Rust directly without actually having to deal with their verbosity by hand. Then we can repeal Wirth's law and have our complexity too.
So the only argument is that the token window is a disadvantage for languages that use more tokens for an equivalent program. But token windows are only getting bigger, and there's also no need to fit the entire codebase in a single prompt.<p>If anything, it sounds like ruby on rails should've been _the past_ of AI. But it clearly wasn't.
The premise is wrong. You hardly need your entire codebase in the context window to generate code. If your code is properly modularized, all you need is for a specific module to be in it, maybe with some interfaces from other modules.
... because the author considers Ruby and Rails to be a very concise language. And then the theory is that less tokens take up less space in the attention window.
The "future of AI" is an unending sea of half code and half language in heavily marketed products that claims heaven and earth, with premium VIP stealth access to hell, such that heaven never knows. Which is of course nonsense, but will be a huge hit with all the religious, and will continually mint billionaires to the uncanny dismay of anyone with a brain.
Jesus, from the quagmire of Python to the frying pan of Ruby.<p>Can we not just use a language with a decent type system and compiler story? Heck, at this point I'd take C# or TypeScript over Ruby.