"Csharp is stealing our thunder": discussion on /r/fsharp

F# has its purpose though I, like others, feel that wide application of a functional language is not really the best way to go. I see a lot of people pick a language and then see everything as a problem solved by that language and it does go both ways. At a previous employer I was responsible for context management, multi-layer concerns and corporate wide re-usable libraries and hardware drivers. This of course leans toward C/C# in a lot of cases.

However the team consuming the libraries was writing a planning and control algorithm for robotic control. They would do this in C# because "we all used C#" despite my protests time and again. I would argue that that kind of algo does lend itself naturally to F# that is why PLCs still use ladder logic to this day as it is a more natural expression of what you want to do. They still soldiered on with C# having multiple useless layers of inheritance and ceremonial object structures just so they could make C# happy while the bulk of their code would be in 3 functions.

IMO a .NET platform developer should understand the languages that the platform supports because while they are all turing complete each has its strong and weak points.

As far as VB goes, it is resoundingly rejected mainly because it is not really needed and has not been since .NET's inception. VB.NET was included in the platform so that VB6 and VBA application developers would make the transition. Of course they never left their language because apparently being a polyglot is some kind of special "hard" thing to do. Granted some people like the verbosity and its more "natural" formatting. IMO there are not enough distinctive features of the language to make it worth knowing or supporting anymore though it will likely stick around for decades much like COBOL and for many of the same reasons. Sigh.

/r/csharp Thread Parent Link - np.reddit.com