Sunday, March 07, 2010

2010-03-07 Sunday - Functional Programming Tutorials

I had a discussion two weeks ago with a fellow architect - and he asked for suggested areas to dive into to expand his professional development, I suggested that Functional Programming would be my first suggestion (with Scala, F#, Python, Erlang, Haskell being possible languages to consider adding to his repertoire).

My good friend, Dean Wampler, PhD, is the co-author of Programming Scala - an excellent book on Scala and Functional Programming



2010-09-24: Also, see a recent slide deck Dean uploaded: 
http://www.slideshare.net/deanwampler/seductions-of-scala


Bill Venners, who I had the pleasure of meeting at QConSF 2009, was kind enough to provide me with a copy of the book he helped co-author: Programming in Scala: A Comprehensive Step-by-step Guide


Apress Publishing was kind enough to provide me with copy to review of David Pollack's excellent book: Beginning Scala

(I also had the pleasure of meting David at QCon).


If you happen to ever have a chance to hear Josh Graham and/or Amanda Laucher speak on F# - do not miss it. I had the pleasure of hearing them speak at QCon 2009 in San Francisco.


I spent a little time last night looking for some interesting Functional Programming tutorials and found a few that I want to save for future recommendation to others:

In particular, I found Richard Bird's paper very interesting:

FUNCTIONAL PEARL, A program to solve Sudoku, by Richard Bird, Programming Research Group, Oxford University
http://www.cs.tufts.edu/~nr/comp150fp/archive/richard-bird/sudoku.pdf

An interesting blog post by Bosco on the direct practical application and utility of Functional Programming in the bio-informatics domain:
Our Parallel future: an introduction to functional programming
http://boscoh.com/science/our-parallel-future-a-introduction-to-functional-programming

David Jones ("Code Monk") PyCon UK presentation: Introduction to Functional Programming in Python
http://drj11.wordpress.com/2007/09/10/introduction-to-functional-programming-in-python-slides/

Dr. Dobbs > January 2010 > Introduction to Functional Programming

http://www.drdobbs.com/windows/222200479?pgno=1

Introduction to Functional Programming
COMPUTER SCIENCE AND ENGINEERING - Chalmers University of Technology and University of Gothenburg
http://www.cs.chalmers.se/Cs/Grundutb/Kurser/funht/index.html


Haskell Introduction
http://www.haskell.org/haskellwiki/Introduction


Functional Programming HOWTO
http://www.amk.ca/python/writing/functional



Python v3.1.1 documentation » Python HOWTOs » Functional Programming HOWTO
http://docs.python.org/3.1/howto/functional.html


CS 254: Introduction to Functional Programming, a course offered by Fritz Ruehr at the Computer Science Department of Willamette University.
http://www.willamette.edu/~fruehr/254/


The Code Project > Introduction to Functional Programming using F# - Part 1
http://www.codeproject.com/KB/net-languages/intro_functional_fsharp.aspx


Alan Guald's Functional Programming Tutorial
http://www.freenetpages.co.uk/hp/alan.gauld/tutfctnl.htm

Introduction to Functional Programming in C#, by Matthew Cochra

http://www.c-sharpcorner.com/UploadFile/rmcochran/IntroductionToFunctionalProgramming01122008083909AM/IntroductionToFunctionalProgramming.aspx


Introduction To Functional Programming with Scheme
http://docondev.blogspot.com/2010/01/introduction-to-functional-programming.html

University of Cambridge, Computer Laboratory
Introduction to Functional Programming (1996/7), John Harrison
http://www.cl.cam.ac.uk/teaching/Lectures/funprog-jrh-1996/


Introduction to Functional Programming (1997/8), John Harrison
http://www.cl.cam.ac.uk/teaching/Lectures/funprog-jrh/

http://www.cl.cam.ac.uk/teaching/Lectures/funprog-pag/



CSE536 Introduction to Functional Programming, Home Page
http://web.cecs.pdx.edu/~sheard/course/funprog/index.html

Summer School and Workshop on Advanced Functional Programming, St Anne's College, Oxford

http://people.cs.uu.nl/johanj/afp/afp4/

No comments: