The goal of this document is to teach functional programming through practical examples. Our field of study will be the FIX financial protocol.
At first, we illustrate some of the functional programming concepts (e.g. the typing system) with examples taken from the FIX specification. Then, conversely, we try to answer some problematics related to the implementation of the FIX protocol with functional programming solutions.
In the end, this document should give you a good understanding of the main functional programming principles, and a new perspective of software development in general (as we will compare and contrast functional programing with popular programming paradigms).
Whether you are looking for an introduction to functional programming languages (F#, OCaml, Haskell...) or you want to understand some of the new concepts introduced in popular programming languages (e.g. type inference, "lambda expressions" or anonymous functions, higher-order functions...), then this document could be a good start.
Download: Functional Programming: Implementing an inter-banking protocol (PDF, 218 pages)
Table of contents:
Chapter 1: The benefits of functional programming
Chapter 2: Implementation of a banking protocol
Chapter 3: About functional programming
Chapter 4: First steps in OCaml
Chapter 5: Types
Chapter 6: Types and business concepts
Chapter 7: Types, measurements, and units
Chapter 8: Exercises on types
Chapter 9: Some programming concepts
Chapter 10: Functions
Chapter 11: Lists
Chapter 12: Exercises on Lists
Chapter 13: Case studies on functions
Chapter 14: Modules
Chapter 15: Imperative features in OCaml/F#
Chapter 16: Lazy evaluation
Chapter 17: Key concepts of functional programming
Publié le 1 décembre 2012 - Mis à jour le 1 décembre 2012