3 ms·
Nim is very flexible, and too flexible after you think about it. Compare C with excessive use of macros. That's an antipattern in C and presumably a feature o
by j_not_j 4y ago
Nim is very flexible, and too flexible after you think about it. Compare C with excessive use of macros. That's an antipattern in C and presumably a feature of Nim.
C++ is just too big and slow to compile.
Rust has a reputation of complication and steep learning curve.
Go has the same issues as Node.js -- uncontrolled import of hundreds of weird and unknown and unknowable libraries.
V is opinionated, has a single definition of correct formatting, compiles to fast-enough C, has numerous handy features, is sensitive to multiple platforms and architectures, and has lots of usefully comparable code to learn from and borrow from.
V is not scientific enough, but that depends on the libraries you choose not the language itself (the scientific lib vsl is quite different from the tensor lib).
There are a lot of wanna be scientific languages (Chapel is a particularly good example) but the usual problem is that no-one adopts them because almost no-one else adopts them. Cray Fortran introduced Co-Array Fortran which got some traction but it is almost unheard of both inside and outside the Fortran community. (CAF abstracted from OpenMPI so you could write code that ran on hundreds of CPUs without really caring how or where the code ran.)
Maybe chatgpt or other LLMs will enable effective cross-language translation making it easier to move between interesting language communities. Modulo translation errors of course.
- amedvednikov 4y ago> the scientific lib vsl is quite different from the tensor lib Check out vtl: https://github.com/vlang/vtl https://github.com/vlang/vtl