DEV Community

Discussion on: What is your "Coder/Language Fit"

 
mindplay profile image
Rasmus Schultz • Edited

I'm actually not fond of purely functional programming languages. While they're great in theory, I find that the barrier of entry is too high for most people, and code in functional languages tends to be more nested and harder to understand.

It's not a skill that most people acquire easily - and while you could say that it's worth the investment (and you'd probably be right) there is a shortage of talented programmers to begin with, most of them do not know functional programming.

Besides, I don't think there's really a functional programming language that is popular enough that you could describe it as "mainstream"?

I do think that programmers should know some functional programming language concepts and have an understanding of the qualities, but, from my perspective, it's better to choose mainstream languages that also allow functional programming - so we can apply the concepts when it makes sense and adds value, but, the rest of the time, we can leverage the talents of the majority of the talent pool.

Thread Thread
 
ssimontis profile image
Scott Simontis

You bring up a lot of really good points. The learning curve is pretty insane, from me hearing about functional programming and trying to learn it for the first time until I felt moderately comfortable using it, 2 years had passed. Some of that is the lack of good resources or poor community support, but it is difficult.

Scala might be the most mainstream language that you can use for FP? And of course Javascript. F# still feels like a second-class citizen in the .NET world. Getting .NET to play well with F# can be a PITA. I get away with using it for scripts and that's about it. I get confused trying to scale out a large project - OK I can write a monad and implement some cool data transformation, but how d I write an entire program functionally? I don't see any tutorials offering that.

It has changed the way I write C# and JS in a positive way. I am about to start contributing to the F# foundation I think. Making it viable...one ticket at a time!