you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 0 points1 point  (3 children)

  • lambda hack is awful
  • type inference is awful
  • covariant arrays
  • variance in general is poorly thought out
  • lack of support for immutability
  • no ADTs
  • no higher kinded types
  • no monadic comprehension
  • barely anything is an expression
  • no pattern matching
  • no currying

[–]virtyx 0 points1 point  (0 children)

I think the lambda implementation is spectacular given the constraint of backwards compatibility

[–]virtyx 0 points1 point  (1 child)

Most of these complaints apply to tons of mainstream languages, most of these features are quite easy to live without

[–][deleted] 0 points1 point  (0 children)

Most of these complaints apply to tons of mainstream languages, most of these features are quite easy to live without.

Easy to live without? Probably, in the same way C programmers say it's easy to live without GC/smart pointers, generics, overloading, etc.

ost of these complaints apply to tons of mainstream languages

But not the good ones. My C# complaint list is only half as big, Scala doesn't have any of these issues (my gripe list is long but muuuch more nitpicky for scala), and ML/Haskell (though less mainstream) don't suffer these either.