and then you can try...
The following series are tutorials on the key concepts of F#.
These posts explain some core patterns in functional programming -- concepts such as "map", "bind", monads and more.
- Introduction to functional design patterns.
- Railway Oriented Programming: A functional approach to error handling
- State Monad: An introduction to handling state using the tale of Dr Frankenfunctor and the Monadster.
- Reader Monad: Reinventing the Reader monad.
- Map, bind, apply, lift, sequence and traverse: A series describing some of the core functions for dealing with generic data types.
- Monoids without tears: A mostly mathless discussion of a common functional pattern.
- Fold and recursive types: A look at recursive types, catamorphisms, tail recursion, the difference between left and right folds, and more.
- Understanding Parser Combinators: Creating a parser combinator library from scratch.
- Thirteen ways of looking at a turtle: demonstrates many different techniques for implementing a turtle graphics API, including state monads, agents, interpreters, and more!
These posts provide detailed worked examples with lots of code!
Specific topics in F#