i wonder which is a better target for code generation by llm-s. regular boring langugages like python or C or functional languages. one has way more doc & existing code therefor more learning material for the llm, the other however is much cleaner (at least in my head) and doesn't need the constant stress of keeping the state in mind ...
Got a little bowling bevy/openxr demo going in like half an hour just running into guardrails, needed some manual intervention but it's pretty good for being entirely new to me. I was able to hook up my quest 3 and look around.
used free-tier chatGPT for the original listing, fixed up broken and outdated APIs and deps, then had it rewrite it with that knowledge. Also used Cline with local qwen3-coder-a3b-instruct for more targeted fixes.
Of course this would choke on a bigger project, but if you just keep scope small enough at each step it can still be worth it.
I am still figuring out how to use APIs that actually cost money, but for the local LLM I don't mind wasting GPU time and seeing it go in circles until I kill it.
if i were generating any language other than python or javascript i would make it something extremely strongly typed so the AI can fix its own mistakes faster
Like Idris for example? With dependent types?
As https://github.com/edwinb/Idris2/blob/main/tests/typedd-book/chapter06/Printf.idr it's possible to write a "type-safe printf" in the language
More training examples and better compilers help, so Rust was pretty good to learn with LLM assistance. I am still struggling to incorporate it into our clojure repo, but other people on my team have done it successfully.
If you provide the LLM with a REPL it can establish an effective feedback loop with a βlivingβ program. In this case the quantity difference in training data and static analysis is less meaningful.
Faster feedback loop, better feedback, more context, better training data all helps
@mauricio.szabo what's special about idris's printf? ocaml and rust also have type-safe printf
I've found AI is not very good with typed languages. The issue is the types don't serve the LLM validate itself because it generates them too. And then it seems to get it confused, maybe it dilutes the context and takes more space. Having said that, I speak for Java mostly. So maybe other typed languages would work. The Clojure Repl is awesome to let AI self-validate. That's the best I found. Then tests are pretty good, but slower and can result in a lot of context consumption.
You need to use a hallucinator that actually runs commands and recompiles. Cline can do simple tasks with local Qwen3. I used http://continue.dev before that, and I had to be more in the loop to correct it, but it's better just for talking about the work.
I like it for small refactoring and generating tests to hit edge-cases I might miss.
I've gotten real work done with it. I think it can make stuff I already know how to do a little faster, but I'm still pretty far off from vibe-coding.
@gtrak I'm not familiar with Ocaml and Rust, but from what I understand, Idris' doesn't actually have printf - it's coded in user-space, meaning that you have a type system that is able to say "If the string contains %s, expect a parameter that is a String" and then you recurse on that (like, if the string also have a %i, expect an integer) until there's no more "special chars" on the string, and then the "type" ends.
ah, makes sense. ocaml does it with special compiler hacks, and rust uses a macro, but I think from the perspective of an LLM, it doesn't matter how it's implemented
Which font do you use to code?
Aporetic Sans is really nice (and probably less well known) https://protesilaos.com/emacs/aporetic-fonts-pictures
I like the quasi-proportional variants in particular for doc buffers / comments / markup files where vertical alignment isn't that crucial
https://commitmono.com/ Big fan of Commit Mono, a no-nonsense monospaced font that feels more like an ordinary sans-serif typeface than almost any other.
I think they look a lot better on web pages than in text editors, but if you want a rare serif monospace font to pair with long-form writing in a serif typeface, GitHub's https://monaspace.githubnext.com/ is pretty nice. I used it in the documentation page for https://adorn.fabricate.site/, where it works quite well.
Hack.
Fira code
jetbrains mono with a fallback to fira code
Might I introduce you all to the legendary https://dtinth.github.io/comic-mono-font/
My "if I had too much money" coding font has been https://usgraphics.com/products/berkeley-mono for a while. Just gorgeous.
That looks beautiful. Tempted to change.
> comic monospaced font Isn't that just Monaco? (I hate monaco)
I just can't quit Menlo
Menlo is a much better default
used Inconsolata for many years though, still fond of that one too
Input Mono is nice: https://djr.com/input/ (free for private use in editors)
for anyone that wants to blind test their preference: https://www.codingfont.com/
Marista? https://www.myfonts.com/collections/marista-font-zephyris (Just kidding, but yes, it is a monospaced cursive font π )
There's the very narrow (and space efficient) https://typeof.net/Iosevka/, but I keep coming back to Jetbrains Mono
IBM Plex Mono
Source Code Pro
Anka Coder
Monolisa https://www.monolisa.dev/
> used Inconsolata for many years though, still fond of that one too Team Inconsolata here, after cycling through a bunch of other fonts. Designed by the very accomplished gentleman and scholar, Raph Levien https://en.wikipedia.org/wiki/Raph_Levien