Remix.run Logo
everforward 10 hours ago

I think this is more about `ruff` than `uv`. Linting is all about parsing the code into something machines can analyze, which to me feels like something that could potentially be useful for AI in a similar way to JetBrains writing their own language parsers to make "find and replace" work sanely and what not.

I'm sort of wondering if they're going to try to make a coding LLM that operates on an AST rather than text, and need software/expertise to manage the text->AST->text pipeline in a way that preserves the structure of your files/text.

skydhash 9 hours ago | parent [-]

Writing a parser is not that much of work to buy a company in order to do it. Piggybacking on LSP servers and treesitter would be more efficient.

dcreager 8 hours ago | parent | next [-]

The parser is not the hard part. The hard part is doing something useful with the parse trees. They even chose "oh is that all?" and a picture of a piece of cake as the teaser image for my Strange Loop talk on this subject!

https://www.youtube.com/watch?v=l2R1PTGcwrE

everforward 9 hours ago | parent | prev [-]

Writing a literal parser isn’t too hard (and there’s presumably an existing one in the source code for the language).

Writing something that understands all the methods that come in a Django model goes way beyond parsing the code, and is a genuine struggle in language where you can’t execute the code without worrying about side effects like Python.

Ty should give them a base for that where the model is able to see things that aren’t literally in the code and aren’t in the training data (eg an internal version of something like SQLAlchemy).

skydhash 7 hours ago | parent [-]

If you’re talking about magic methods/properties enabled by reflection and macros, then you’re no longer statically analyzing the code.