At this point, if a language doesn't have first class support for multithreading and static typing, I wouldn't start a new project in it. Nullability support is pretty high up there too, but that is a far more tractable problem.
At this point, if a language doesn't have first class support for multithreading and static typing, I wouldn't start a new project in it. Nullability support is pretty high up there too, but that is a far more tractable problem.
Well, it's not yet ready, but it's incoming
https://discuss.ocaml.org/t/ocaml-multicore-report-on-a-june...
Nullability? As in null references? The "billion-dollar mistake" (Tony Hoare, referring to Algol), also frequently called the "worst mistake in computer science"?
https://www.tutorialspoint.com/swift/swift_optionals.htm
It's also called nullability support, you can see it in use in this article:
http://journal.stuffwithstuff.com/2011/10/29/a-proposal-for-...
Option type on wikipedia, cant paste the link somehow.
On any case, as someone else pointed out, OCaml had supper for option types built in, through sum types.
I agree that sum types are indispensable in a modern programming language.
Out of curiosity, what is it about smart contracts that makes multithreading so important? Why isn't multiprocessing enough? [edit: sorry, I mis-read your comment. You said that multithreading probably isn't a big deal for this problem.]
It's been a couple of years away for the last 10 years.
https://discuss.ocaml.org/t/ocaml-multicore-report-on-a-june...
https://discuss.ocaml.org/t/ocaml-multicore-report-on-a-june...