F#–Exercises in Programming Style

If you enjoy reading these exercises then please buy Crista’s book to support her work.

Style Name Description
Good Old Times Early 50s style. Small amount of memory, and no variable names or tagged memory addresses.
Go Forth Stack based style, ala Forth or Factor.
Monolithic aka Brain Dump. No abstractions, no use of library functions.
Cookbook Procedural style.
Pipeline Functional style.
Code Golf APL style. As few lines of code as possible.
Infinite Mirror Recursive style.
Kick Forward Continuation passing style.
The One Monads.
Things Object-oriented style.
Letterbox Message passing style.
Closed Maps Where everything is a map from keys to values.
Abstract Things Similar to Things, but more abstract (e.g. interfaces).
Hollywood Callback hell.
Bulletin Board Pub-sub style.
Reflective Meta-programming style.
Aspects Aspect-oriented style.
Plugins Using dependency injection.
Constructivist Defensive coding.
Tantrum Design by contract.
Passive Aggressive Let it crash.
Declared Intentions
Quarantine Programming with IO Monad.
Persistent Tables Using a relational DB.
Lazy Rivers Dataflow style.
Actors Using actors.
Map Reduce
Double Map Reduce Hadoop style.
Trinity MVC style.
The C Flow