3 ms·
I'm sorry, but to be an amazing programmer in Haskell, the understanding you need of the lambda calculus is minimal.. For example, consider this function to com
by CHY872 12y ago
I'm sorry, but to be an amazing programmer in Haskell, the understanding you need of the lambda calculus is minimal.. For example, consider this function to compute the Ackermann function in the lambda calculus:
λx. x (λf y.y f (f 1) ) (λx1 f x.f (x1 f x))
or even just addition
λx y f x.(x f) (y f x)
none of that will even come up in Haskell.
Even the type system - you need to understand some tiny amount - you can only add ints to ints etc. The more complicated stuff, the type inference, the monads etc - can be ignored until later.
Haskell can be used without understanding - almost all programming languages can. That's why we have so many newbie bugs.
- lispm 12y agoUntil later? What later. An hour later? Let's look at a few chapter titles of Real World Haskell. Chapter 2: Types and Functions Chapter 3: Defining types, streamlining functions Chapter 4: Functional Programming Chapter 6: Using Typeclasses Chapter 14: Monads Chapter 15: Programming with Monads Chapter 18: Monad transformers
- Amadiro 12y agoIt's a matter of perspective -- to someone who has taken a university class on lambda calculus/on logic that had a chapter on lambda calculus (e.g. as part of a M.Sc. in mathematical logic or CS), anything in RWH would probably seem extremely basic and superficial. It doesn't even introduce most of the basic things a first chapter in a book on lambda calculus would probably introduce you to.
- pjmlp 12y agoMy degree was also heavy on FP and LP alongside many other themes. I think the biggest issue is with those developers that never got a degree or were unfortunate to land in a degree that taught programming languages instead of programming concepts.