DEV Community

Discussion on: Is Haskell bad for FP?

Collapse
 
drbearhands profile image
DrBearhands

I've only looked at it briefly. I saw side effects and decided to look further. If you have side-effects, you're not doing FP.

Collapse
 
rotexhawk profile image
rotexhawk • Edited

Yes Scala gives you that option but it doesn't mean you can't do FP in Scala. It has all the features of an FP language. It also give you an amazing type system, consistent Apis for all the data structures, concise syntax and many other great features. Compile time is fast and like Haskell it does have a lot of features but you don't have to know everything to get started.

Also learning FP is more of a paradigm shift and that's probably why most of us think that Haskell or Scala are not beginner friendly because we confuse (simplicity with familiarity).

Thread Thread
 
jvanbruegge profile image
Jan van Brügge

You can do functional programming in most languages. The good thing about Haskell is that it does not compromise. Scala forces you to have a lot of self-discipline to not do bad stuff.

Thread Thread
 
drbearhands profile image
DrBearhands

That's correct. We might as well call C functional if that's the criterium.

Functional programming entails two things:

  1. no side effects
  2. computation as evaluation of mathematical functions

2 does imply 1, but let's ignore that for now.

If you don't have the guarantee of 1, there are a lot of properties that just do not hold for you program. You might call it functional style programming, but calling it functional is incorrect.