which qualities should a programming language / platform have so that it can benefit more from LLM-based tools?
I asked ChatGPT and here is how it ranked TIOBE's top 20:
Top tier -- AI-friendly (9 - 10/10)
These languages get the biggest immediate productivity boost from AI: large corpora, great tooling/IDEs, REPLs or declarative style, and stable ecosystems.
* Python (TIOBE #1) -- huge training corpus, ML ecosystem, REPL + notebooks -> excellent NL-> code and copilots.
* JavaScript (TIOBE #6) -- massive web ecosystem, short idiomatic snippets that LLMs do well at.
* C# (TIOBE #5) -- Roslyn + mature tooling give strong static-analysis signals for safe code generation and refactors.
* SQL (TIOBE #12) -- declarative queries map exceptionally well from natural language; high precision generation.
Strong tier -- Very good fit (7 - 8.9/10)
Large ecosystems and/or excellent tooling -- AI helps a lot, but either low-level detail or domain specifics require caution.
* Java (TIOBE #4) -- huge corpus + static typing reliable refactors, test generation; boilerplate can be an issue.
* C++ (TIOBE #2) -- massive codebase; templates and patterns help, but low-level UB and build/ABI complexity reduce autonomous use.
* C (TIOBE #3) -- plentiful examples, but pointer/UB and platform specifics make fully automatic changes risky.
* Go (TIOBE #8) -- simple, opinionated style and gofmt = AI produces readable, idiomatic code reliably.
* Rust (TIOBE #18) -- excellent compiler diagnostics let AI produce correct-by-construction fixes; steeper semantics but very promising.
Mid tier -- Useful but with caveats (5.5 - 6.9/10)
AI helps productivity (snippets, prototyping, migration), but domain-specific tooling, legacy idioms, or small corpora limit scope.
* Visual Basic (TIOBE #7) -- large legacy base and lots of examples; useful for migrations and automation but inconsistent modern tooling.
* Perl (TIOBE #9) -- expressive one-liners & CPAN help, but varied idioms make safe generation harder.
* Delphi / Object Pascal (TIOBE #10) -- legacy GUIs and embedded uses -- AI aids porting and snippets.
* PHP (TIOBE #15) -- huge web examples/frameworks; dynamic quirks can trip up blind generation.
* R (TIOBE #14) -- great for data tasks; AI helps plotting/analysis code but less so for large engineering systems.
* MATLAB (TIOBE #16) -- numeric/algorithm prototyping benefits from AI, smaller ecosystem for broader tooling.
Lower tier -- Niche / harder for LLMs (3.5 - 5.4/10)
Specialized domains, niche audiences, or small indexed corpora reduce immediate AI impact.
* Fortran (TIOBE #11) -- legacy scientific code -- good for modernization tasks but limited general tooling.
* Ada (TIOBE #13) -- safety-critical focus and niche community; compiler checks help, but corpus is small.
* Kotlin (TIOBE #19) -- modern language with good IDEs, but smaller training footprint vs the biggest languages.
* Scratch (TIOBE #17) -- educational/block language: AI can create lesson content, but not much production automation.
Legacy / very low-benefit tier (0 - 3.0/10)
Very context-sensitive, architecture-specific or educational-only languages where generic LLM assistance is least useful.
* Assembly language (TIOBE #20) -- highly architecture- and context-specific; AI can suggest patterns but needs deep hardware context.
would you agree with the LLM's "logic"?