← Back to context

Comment by csomar

5 days ago

Tackling 1: No current LLM will be able to do that. Create your Rust project, figure out the dependencies that could be useful on your own, then start by asking which types can be expressed. Then after you have revised the types, figure out (with or without LLM) which functions have to be implemented. Then ask LLMs to implement these functions with tests. With some modifications, you should be able to have a final working solution.

Edit: took a while but here is the code generated by DeepSeek: https://gist.github.com/omarabid/b30195011abf570fde2a084cd11... If you have an example file I could give it a test run.

> Tackling 1: No current LLM will be able to do that.

Github Copilot seems to be able to do it. Mostly because it knows how to call Meshlab. The documentation for Meshlab is hard to search, and having an LLM find the correct function is itself helpful.

Also, it looks like quadric decimation has improved since the last time I looked at it. That algorithm, if pushed too hard, will generate meshes with holes. Now there are options ("preservetopology") which supposedly prevent that. I last looked at that a few years ago, and the only mesh decimator which handled that correctly was the one inside Unreal Engine Editor.

Now I have to test all this stuff, of course.

How have you found LLMs' Rust capabilities compared to Python or Typescript or other more common languages with more publicly available data?

  • I tried some LLMs about six months ago, and got a halfway decent translation between Linden Scripting Language and Lua. I didn't expect that to work at all, but it did, despite very different syntax. The parent article says that if you haven't tried this in six months, it's time to try again. It looks like it's going to be useful for game geometry wrangling, at least.

    LLMs seem to be good at finding obscure library functions from a description of the function needed, something where where keyword searches aren't too helpful. Previously, searching Stack Overflow helped, but nobody is posting there any more. Good reference manuals are almost historical artifacts now.

  • Rust is the best if you carefully create and document your types. Sometimes you’ll get stuck in lifetime issue but it’s a sign the LLM didn’t do a good job.