#AskFedi: I'm looking to find new programming languages that meet all(!) of the following criteria:
1. Dynamically typed.
2. Has a conflict-free module system. Not namespaces, not a flat dependency tree. It must support conflicting versions of the same module at different places in the (transitive) dependency tree.
3. Suitable for 'systems programming' tasks like OS kernel development, microcontrollers, ideally also the ability to write C-compatible libraries (some static typing for the API surface there is acceptable).
4. There is usable documentation (it does not need to be perfect).
5. Memory-safe (to at least the level you would find in JS/Python/etc.)
The language doesn't need to be well-known! And it doesn't need to have a lot of libraries available for it, but it should be usable for a real-world personal project. Hit me with your niche recommendations :)
(Please do not argue with me about the requirements. I am aware of what is and isn't possible.)
@joepie91 Hmm, surprisingly hard question. C and Rust are the obvious ones that meet 3 but not 1. And then there are many languages that hit 1245 but not 3.
Then there's things like micropython that sortof meets 3 and 1, but kinda sucks at everything else.