Comment by jszymborski
2 days ago
I've found the JVM really gets in your way whenever you want to do something interesting with Scala. Rust is fantastic, but a lot of what I want to do can afford the overhead of a GC so that I can avoid lifetimes, borrows, etc...
I've not written any OCaml, but I've heard tell of its reputation of being hard to pick up.
I find Swift to be a nice, less Rust-y Rust. It uses automatic memory management by refcounting (I would call it a GC’d language but people start flame wars about it). Alas ecosystem is small and oddly shaped.
Like with Rust you can write very imperative code full of mutation and thingies with tons of methods, or you can write very functional code passing around immutable struct values types. It also has decent async story, and newly got “actors” and is heading towards optional rust like borrow checking.
I really _want_ to like Swift, but the development experience was so abysmal that it turned me off the language entirely.
I have been entertaining the thought of writing an LLVM frontend for Gleam, though. (I don't know what I'm doing, I don't know if this is doable, etc.)
I’ve been thinking about Fil-C as a compile target for high level language implementations that want decent performance with LLVM optimizations. You get GC for “free”, source compatibility with a large fraction of existing C/C++ libraries, and lots of control over memory layout and allocation. You’d still have to build the green threads / process runtime though. Maybe go would be an easier pathway since you get their green threads and GC for free.