Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I get started with functional programming? [closed]

With all the hype around functional programming, which are the best resources to getting started in functional programming [for a C# programmer]? I am not looking for C# 3.0 language improvements.

like image 945
suhair Avatar asked Mar 12 '09 11:03

suhair


3 Answers

Shameless plug: I'm the co-author (well, glorified editor really :) of Real World Functional Programming. It's squarely aimed at people such as yourself. It teaches the principles of functional programming, mostly via F#, and also shows how you can apply the same principles in many cases in C#.

It assumes you know C# already, but introduces F# from scratch. It gives you enough knowledge of F# to get you started so you can experiment, but the aim is to teach a functional way of thinking rather than going into every nook and cranny of F# as a language. (In other words, if you want to start using F# as a production language, I'd get another book as well.)

It's not out yet, but you can get early access via the MEAP programme. Several chapters are available already, with more coming soon.

like image 53
Jon Skeet Avatar answered Jan 03 '23 14:01

Jon Skeet


I think for a C# developer with .NET background, the best way to enter functional programming is to learn F#.

like image 44
mmx Avatar answered Jan 03 '23 16:01

mmx


Pick a functional language. Python has many functional features. Haskell is purely functional.

Go to Project Euler.

Solve some problems.

If you look at the Project Euler stats, Python and Haskell are very highly ranked.


Edit

Functional Programming in Python:

  • http://www.ibm.com/developerworks/library/l-prog.html
  • http://www.amk.ca/python/writing/functional
  • http://linuxgazette.net/109/pramode.html
  • http://www.slideshare.net/adambyrtek/functional-programming-with-python-516744
  • http://scott.andstuff.org/FunctionalPython
  • http://docs.python.org/tutorial/datastructures.html#functional-programming-tools
  • http://www.freenetpages.co.uk/hp/alan.gauld/tutfctnl.htm
like image 32
S.Lott Avatar answered Jan 03 '23 16:01

S.Lott