fantasyland / fantasy-land

Specification for interoperability of common algebraic structures in JavaScript
MIT License
10.12k stars 374 forks source link

How to understand these common algebraic structures? #277

Closed KangdaOOLin closed 6 years ago

KangdaOOLin commented 6 years ago

image

Is there any way I can understand these common algebraic structures in the above picture?

I'm a javascript developer, but in terms of functional programming, I'm a rookie. I'm interested in functional programming and tooke some time to understand the concept of Curried, Pure Function, Compose... But I don't quite understand what Functor, Monad, Chain, Applicative are :sweat:

Is there any website or other ways to help me understand these concepts?

safareli commented 6 years ago

This concepts are from Haskell/PureScript, so any beginner resource related to that languages will help. for example:

If you want to go deep into category theory you could take a look at this:

Also when i was getting started with FP, I have collected some resources here https://github.com/safareli/fp-stuff

KangdaOOLin commented 6 years ago

@safareli Thx! I decided to learn Haskell language to understand purely functional programming :smile:

gabejohnson commented 6 years ago

@wenkanglin, there's also a really good blog series http://www.tomharding.me/2017/03/03/fantas-eel-and-specification/ which covers most of the algebras in the spec.

KangdaOOLin commented 6 years ago

@gabejohnson :ok_hand: