4 ms·
Syntax like F# but with the ability to get performance like C++. Linear types seem to offer some hope of being able to have manual / non GC memory management in
by mattnewport 4y ago
Syntax like F# but with the ability to get performance like C++. Linear types seem to offer some hope of being able to have manual / non GC memory management in a functional programming language but I haven't really seen this done in a mature functional language.
To really get good performance you probably need the ability to drop down and write more procedural style code in hot code paths and expose it with a functional interface. The details of what exactly that would look like in a way that integrated nicely would be important. I'd also want to be able to easily move code to the GPU or incrementally vectorize it.
I'd also like to see the one language / runtime support everything from C++ constexpr style compile time programming through native compilation, JIT runtime and an interpreted mode for scripting with it being easy to interoperate between levels and reuse the same code across contexts.
A good ecosystem of tools and libraries with a sane package manager and build system would also be important. F# is decent there but could still use improvement.
I'd also like to see less impedance mismatch between serialization and runtime data structures and with database / relational data. Hoon is pretty interesting in how there is no real distinction between runtime and serialized data in many contexts but its harder to see how to do something like that and meet the other goals above.
Much of the above is driven by the needs of games and VR. I'm interested to see what comes out of Simon Peyton Jones working at Epic as it seems it may lead to something along these lines.
- 0atman 4y agoHave you tried Rust? It checks a great deal of your boxes, don't be misled by the reputation of a "systems programming language"! I made a video explaining why rust is different here, if you're interested https://youtu.be/4YU_r70yGjQ https://youtu.be/4YU_r70yGjQ
- mattnewport 4y agoI haven't yet, I've read a bit about it and it's on my list to try and learn it properly at some point but I haven't yet prioritized it as being pretty experienced with C++ (and liking it more than a lot of people seem to) I haven't seen a really compelling reason to pick Rust over C++ for my use cases.
- MH15 4y agoLoved this series of videos!