Functional Programming Textbook
Free

Functional Programming Textbook

By Yusuf Motara
Free
Book Description

Thank you for your interest in this textbook!  It has been carefully developed over the past few years to give you a smooth and gentle ramp-up into the world of functional programming, as taught using the functional parts of F#.  If it helps you to learn the ins and outs of practical functional programming, please recommend it to others.

Table of Contents
  • Notation and conventions
    • Whitespace conventions
  • Setup
    • F# files
    • F# interactive
  • Introduction
    • Immutability
    • Expressions
    • Functions
    • First-class functions
    • Referentialtransparency
    • Purity
  • Exercises
  • Basics
    • Operators
    • Patterns
  • Exercises
  • Functions
    • Curried functions
    • Function types
    • Operators
  • Exercises
  • Tutorial
    • Extensions
  • Match expressions
    • Mapping functions
  • Exercises
  • Tutorial
    • Extensions
  • Can you be helped?
    • Scepticalepsy
    • Analogiculosis
    • Functionalophobia
    • Syntactic dyslexia
    • Hypopractical psychosis
    • Space dysmorphopsia
  • Iteration
    • More efficient recursion
  • Exercises
  • Tutorial
    • Square root
    • Chocolate wrappers
  • Basic data structures
    • Tuples and Records
    • Discriminated unions
    • Comparison
    • ``as'' patterns
  • Exercises
  • Tutorial
    • Commission of Sales
  • Type theory
    • Type-safety
    • Parametric polymorphism
    • Type inference
    • Type errors
    • Generic composite types
  • Exercises
  • Lists
    • Comparison
  • Exercises
  • Useful functions
    • Strings
    • Catastrophic errors
    • Options and Results
    • List operations
    • Sequence functions
    • Mathematical functions
  • Exercises
  • Functional techniques
    • Higher-order functions
    • Closures
  • Exercises
  • Tutorial
    • Extensions
  • Lambda calculus
    • Basics
    • True and false
    • Practical impact
  • Answers
    • Page 7
    • Page 13
    • Page 19
    • Page 25
    • Page 33
    • Page 41
    • Page 49
    • Page 53
    • Page 59
    • Page 63
    No review for this book yet, be the first to review.
      No comment for this book yet, be the first to comment
      You May Also Like
      Also Available On
      App store smallGoogle play small
      Categories
      Curated Lists
      • Pattern Recognition and Machine Learning (Information Science and Statistics)
        by Christopher M. Bishop
        Data mining
        by I. H. Witten
        The Elements of Statistical Learning: Data Mining, Inference, and Prediction
        by Various
        See more...
      • CK-12 Chemistry
        by Various
        Concept Development Studies in Chemistry
        by John Hutchinson
        An Introduction to Chemistry - Atoms First
        by Mark Bishop
        See more...
      • Microsoft Word - How to Use Advanced Algebra II.doc
        by Jonathan Emmons
        Advanced Algebra II: Activities and Homework
        by Kenny Felder
        de2de
        by
        See more...
      • The Sun Who Lost His Way
        by
        Tania is a Detective
        by Kanika G
        Firenze_s-Light
        by
        See more...
      • Java 3D Programming
        by Daniel Selman
        The Java EE 6 Tutorial
        by Oracle Corporation
        JavaKid811
        by
        See more...