Hacker News new | ask | show | jobs
by catnaroek 3105 days ago
> Concrete example: It doesn't have typeclasses.

It's not like type classes are themselves suuuper-principled.

> Being able to interoperate with .NET is a strength, not a weakness.

Being able to interoperate with .NET is a good thing. Letting the .NET object model permeate the whole language's type structure is less of a good thing (to put it mildly). OCaml did the right thing w.r.t. objects: You can use objects if you so wish, but the language doesn't ram them down your throat.

1 comments

F# and OCaml are different languages with different goals. It should come as no surprise there are different sacrifices between the languages.

Breaking compatibility with .NET, which is F#'s biggest benefit is counter productive.

My suggestion wouldn't “break compatibility” with .NET any more than, say, C++/CLI (or whatever it is called nowadays) does.