6 ms·
The future of AI is Ruby on Rails
- lifthrasiir 2y agoBy this logic, the future of AI is golf languages.
- homarp 2y agothe future is perl
- danielbln 2y agohttps://news.ycombinator.com/item?id=43422994 https://news.ycombinator.com/item?id=43422994
- fxtentacle 2y ago... 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.
- bdcravens 2y agoRails isn't a language. Ruby is. Rails is just glue for other libraries in Ruby.
- bushido 2y agoMy 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. 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. 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.
- ghuntley 2y agoHard 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… https://ghuntley.com/oh-fuck https://ghuntley.com/oh-fuck && https://ghuntley.com/stdlib https://ghuntley.com/stdlib 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). Increased verbosity of the grammar does yield token wastage/ineffectiveness. 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…
- johnisgood 2y agoSo Ada / SPARK? It has a pretty neat type system.
- ghuntley 2y agoI’ve stumbled across folks using TLA+ / LEAN / COQ. Instead of ramming TypeScript/Whatever into the context window, they just stuff the formal proofs into the context window. Then code generate off em… That’s most Chad pattern I’ve discovered so far…
- nindalf 2y agoCompletely agree. I’d add one more - if the compiler can describe errors in simple, plain English it’s far more likely that the LLM can fix the problem. Some languages do this much better than others.
- ghuntley 2y agoNailed it. These LLMs do not understand code. They are silly string lookup services. Compilers with soundness tend to be INCREDIBLY verbose with their error messages which these LLMs use to ingest to get better outcomes on the re-attempt…
- deleted 2y ago[deleted]
- bdcravens 2y agoThe article never explains the logical leap from Ruby being a concise language to why you'd build AI apps in *Rails*.
- schappim 2y agoDrawing from my experience, modern technologies like Hotwire and Turbo Frames—when integrated with background jobs and Action Mailbox for handling inbound emails—alongside mature tooling, create a surprisingly effective (and enjoyable) platform for developing AI applications.
- malux85 2y agoThis reminds me of that midwit meme, Far left: Just build better models Midwit: Nooo you need succict languages to maximise the token efficiency, succinctness is a form of compression so that you can ... Far right: Just build better models
- m00dy 2y agoThe future of AI is Rust.
- ghuntley 2y agoI actually agree with this. This will be true, as long as Rust doesn’t break their language semantics. Zig keeps making breaking changes and when they do it essentially means all the pre-trained data is incorrect. Going forward it is incredibly important for language designers to not break things. It always was but now the stakes are higher…
- piotr-yuxuan 2y agoClojure is quite strong in that respect, but probably too niche for AI.
- ghuntley 2y agoI have been able to create a brand new programming language purely based on specs and the eval loop technique. If I can build an ESO language using a foundational model (ie. no pre-existing training data) and program with it, then Clojure is not too niche.
- bsenftner 2y agoThe "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.
- moffkalast 2y agoThere is very little Ruby has going for itself. People despair at Python's speed of a sloth on tranquilizers and Ruby is even slower, with a community the size of Lua. When it comes to people considering languages for anything it's usually not even on the list. 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.
- mindwok 2y agoRails is one of the most battle tested, opinionated, and productive frameworks there is. If you aren’t at least considering it, depending on what you’re trying to do, you’re doing yourself a huge disservice.
- deleted 2y ago[deleted]
- senorrib 2y agoThe 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.
- apatheticonion 2y agoJesus, from the quagmire of Python to the frying pan of Ruby. 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.
- tempfile 2y agoThe posted link has an anchor to the bottom of the page. Presumably a mistake?
- dgrcode 2y agoSo 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. If anything, it sounds like ruby on rails should've been _the past_ of AI. But it clearly wasn't.
- bbstats 2y agoLol
- karmakaze 2y agoWhy would working with AI need Rails? I would prefer to bet on Mojo[0]. > 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. [0] https://en.wikipedia.org/wiki/Mojo_(programming_language) https://en.wikipedia.org/wiki/Mojo_(programming_language)