Thee main barrier for me has been the Dart language, I wish it was written in a more popular language like Go.
Thee main barrier for me has been the Dart language, I wish it was written in a more popular language like Go.
I would describe it as C#-lite. It's got all the features of a modern C-derived language with very little of the accumulated complexity. It's got pattern matching, tuple-syntax, a very strong constructor syntax, first class functions (this has become table stakes in the past decade but not so long ago it wasn't)... It's just a well balanced and very pleasant language.
- no value types
- missing fundamental integer types (eg. 64 bit unsigned integer)
- no data classes (records are anonymous)
- no tagged unions
- no static metaprogramming (macros coming soon)
- limited constructors (initializer list expression can't use earlier values in the list, no object initializers)
List<int> is still too often used in APIs instead of Uint8List, even though it has 8x overhead.
Slower than C#, Java, Kotlin & Go. Performance is same as JS (even though it's statically-typed, AOT compiled language).
Still, I stand by my claim that it's C#-lite.
I agree that overall it feels like C#-lite, plus some baggage from early days when it was designed as an alternative to JS.
It will probably become really nice language in a few years.
Is there a source?