Mojo changelog: Traits have arrived!
docs.modular.com
docs.modular.com
And again, if in the future one can write higher level code (which is also possible in Rust via simply ignoring borrow semantics and cloning everywhere, where you still end up with a much faster program than in, say, TypeScript or Python simply due to the compiled and lack of GC nature of Rust), as well as higher level APIs on top of low level routines, how is that any different than Python which already has C++ implementations for popular libraries underneath their Python APIs?
It seems like Mojo doesn't really know what kind of language it wants to be and is throwing features at the wall.
In their early roadmap they said they wanted to take ideas from swift and rust (and C++), and this is just one part of it. They'd been planning on adding Traits eventually, they're just getting there carefully.
Knowing Lattner's previous work, I'm confident Mojo will eventually be open source, they've just said they want to get it right first, which I can respect. But If you compare Mojo with other new 'systems-level' languages like Carbon and Hylo, the Mojo team is basically speed running language development, which is really impressive. I think a big part of what makes that possible is that they're building directly on top of MLIR.
In my mind this is kinda similar to what TypeScript does as a super-set of JavaScript- except that was not about performance, it was about purely about typing.