2 ms·
I love F# dearly, and despite having spent several years writing C# code earlier in my career, I still find switching back to C# from F# painful in lots of litt
by kvb 13y ago
I love F# dearly, and despite having spent several years writing C# code earlier in my career, I still find switching back to C# from F# painful in lots of little ways.
But I think this post is off-base. First, it criticizes C# both for incorporating too many of F#'s features, but also of stagnating. I just don't see how anyone can consider C# to be stagnating... of the heavily-used-in-industry set of languages, is there any that's evolving faster? Java's just now getting lambdas, for instance!
Secondly, I think the lack of promotion of F# by Microsoft is somewhat lamentable (though the community has done a great job of picking up the slack). But I think Microsoft's in a bit of a bind - they've received a lot of criticism for having too much churn in the ecosystem (e.g. ADO -> ADO.NET -> LINQ-to-SQL -> LINQ-to-Entities). So how would the community react to the statement, "you should really be using F# instead of C# going forward" (even if decision makers believed that)? Undoubtedly people would feel that the investment they'd made in learning C# was not worth as much as they thought and they'd start looking into more stable ecosystems (I'm mainly referring here to LOB app developers, who seem to greatly value stability of their platform).
Furthermore, in some ways these changes make the on-ramp from C# to F# even easier, which is a good thing. And C#'s still missing so many great F# features that it doesn't make sense to get too worried about the ones that have been mimicked. And I think it's somewhat true that imitation is the sincerest form of flattery, and having many great features spreading to other languages is a good thing.