Skip to content

Thinking Functionally

Paul Louth edited this page Aug 25, 2018 · 27 revisions

This series of posts will introduce you to the fundamentals of functional programming – what does it really mean to "program functionally", and how this approach differs from object oriented or imperative programming.

  1. Thinking Functionally: Introduction - A look at the basics of functional programming
  2. Mathematical functions - The impetus behind functional programming
  3. Function Values and Simple Values - Binding not assignment
  4. How types work with functions - Understanding the type notation
  5. Currying - Breaking multi-parameter functions into smaller one-parameter functions
  6. Partial application - Baking-in some of the parameters of a function
  7. Function composition - Building new functions from existing ones
  8. Combinators - Parsers and more
  9. Function signatures - A function signature can give you some idea of what it does
  10. What is LINQ really? - LINQ is used for collections right? Yes, but much, much more.
  11. Application Architecture - Approaches to organising your application architecture

These series has been adapted from the excellent fsharpforfunandprofit site and is provided under the terms of CC BY 3.0.