I've moved from Rust to Go for most things because in the era of agents, being able to iterate quickly on a project is a huge advantage and Rust is way, way slower than Go for compilation. There are times when Rust is more appropriate, but for the vast majority of things Go is perfectly fine.
> because in the era of agents, being able to iterate quickly on a project is a huge advantage and Rust is way, way slower than Go for compilation.
Incremental changes in a normal project shouldn’t cause massive compile times. Even for my large projects, the compile times are trivial compared to the duration of an LLM turn.
Very large projects should be broken into logical modules so only the changed part is incrementally compiled. If linking is taking a long time there are alternate linkers that can be used.
If you’re using work trees a lot, set up compiler caching to avoid rebuilding everything from zero on every new work tree is important.
I know these things are frustrating to new Rust users who just want everything to be automatic and easy, but if we’re talking about LLM development anyway then these optimizations would have come up the first time you asked your LLM what could be done about improving compile times. LLMs are very good at setting up these optimizations.
What kind of work are you doing where the LLM turns are only taking "seconds" and it's recompiling all the time?
This morning so far my LLM rounds have taken between 10-15 minutes. An incremental compile happens a couple times at most.
Even on the largest Rust codebases I've been working with (OSS projects), incremental compiles are not taking multiple minutes unless I do something that triggers a full recompile.
slowin · · focus · HN ↗
Aurornis · · focus · HN ↗
Incremental changes in a normal project shouldn’t cause massive compile times. Even for my large projects, the compile times are trivial compared to the duration of an LLM turn.
Very large projects should be broken into logical modules so only the changed part is incrementally compiled. If linking is taking a long time there are alternate linkers that can be used.
If you’re using work trees a lot, set up compiler caching to avoid rebuilding everything from zero on every new work tree is important.
I know these things are frustrating to new Rust users who just want everything to be automatic and easy, but if we’re talking about LLM development anyway then these optimizations would have come up the first time you asked your LLM what could be done about improving compile times. LLMs are very good at setting up these optimizations.
asutekku · · focus · HN ↗
Aurornis · · focus · HN ↗
What kind of work are you doing where the LLM turns are only taking "seconds" and it's recompiling all the time?
This morning so far my LLM rounds have taken between 10-15 minutes. An incremental compile happens a couple times at most.
Even on the largest Rust codebases I've been working with (OSS projects), incremental compiles are not taking multiple minutes unless I do something that triggers a full recompile.