I’ve been working for a while on a new presentation which I was finally able to give last week at the New Hampshire .NET User GroupF# and You! focuses on painting the big picture about F# instead of the off-putting details like having to learn new syntax.

 

functional

For this new presentation I start by discussing the adoption of functional programming on other platforms by using Scala, Erlang and Haskell as examples.  I then continue on to how the algorithmic programmers are moving to functional languages while UI developers are moving towards declarative.

This then naturally raises the question of why programmers would choose a specific style of programming for a specific task.  The answer, of course, is that when you work close to a domain you can build things more quickly and with a lower error rate.

This then transitions easily into the specific beneficial properties of functional programming (and F#).

 

General Overview:

  • The Separation of UI and Back End
  • What is Functional Programming? (Functional Concepts)
    • Pure functions
    • Immutability
    • Lambda Expressions
    • Higher Order Functions
    • Recursion
  • The Benefits of Functional Programming
    • Code Compression
    • Parallelism
    • Robustness
  • Proof is in the Pudding
    • TrueSkill
    • Grange Insurance Rating Engine
    • MSN adCenter
  • Wrap-up

 

I’ve also found that it is useful to show the latest circulating version of the Ant Colony simulation I wrote over a year ago.  I found a version in Don Syme’s JAOO Talk code samples but am not sure who has been keeping it up to date.  A big thanks to whoever that person is.  It provides some sweet eye candy to dull the bitterness of the technical Functional Concepts section.

 

Planned (and Past) “F# and You!” Locations:

11/10/2009 – CT .NET Developers Group (Farmington, CT)
10/28/2009 – Technology Users Group (Charleston, SC)
10/21/2009 – New Hampshire .NET User Group (Nashua, NH)

See the new Other Events section of our F# User Group site for information on other upcoming F# talks.

 

Downloads:

Latest Slides
VS2008 Code Samples