Functional Programming Topics

Introduction

  • Prologue
  • λ Function
  • λ Declaration, not Imperative
  • Logic Understood…and Corrected
  • History…Von Neuman Architecture
  • Until…Massive Parallelism

Players

  • Jane Street Trading – OCaml
  • Electricity de France – Energy Derivatives Trading And Pricing, Scala
  • NASA Jet Propulsion Laboratory – Scala
  • Twitter – Scala

Languages

  • Lisp, Caml, OCaml
  • Erlang, F#
  • Haskell, Scala, C++ Boost, KDB’s K
  • Languages Performance

Concepts

  • Brevity – Shorter Time to Market
  • Immutability
  • Parallelism
  • How this Scales: Black Scholes GPU & Haskell
  • Lazy Evaluation
  • Memoization – (Dynamic Programming & Algo Optimization)
  • Pattern Matching & Classic Expression Problem
  • From Visitor Pattern to Pattern Matching
  • Scala Pattern Matching
  • Bespoke Constructs…towards DSLs
  • Simple Unicode DSLs
  • A Mini “SQL” DSL
  • Lunar Lander DSL – BASIC

Process Algebra

  • Objects Considered Harmful
  • Communicating Sequential Processes
  • CSP Syntax
  • CSP A Trivial Example
  • CSP Deadlock Example
  • CSP Refinement
  • Further Reading

Epilogue

    • Functional Datastructures
    • Scala, F#, Ocaml Pattern Matching Type Inference Exhaustiveness Guarantees

 

Copyright 2011 Chris Kohlhepp

One response to “Functional Programming Topics

  1. Pingback: Functional Programming | sachindamle's Blog

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s