Functional programming -- 2009-2010 --

From Wikiversity

Functional programming (Spring 2010):

How to use these references?[edit]

There are multiple possible approaches, and the one that worked (and still works) for me:

  1. find out the philosophy and context of the subject:
    1. starting with the essays list below,
    2. pick any author (I would recommend either Richard Gabriel (softer words), or Paul Graham),
    3. skim their list of titles and pick one that seems nice,
    4. read it (in a comfortable and productive environment),
    5. while reading open links and references (that seem interesting) in new tabs (or write them down),
    6. repeat the loop until you have gained enough information; (this could (and should) take one to three days and it would be better if they are contiguous;)
  2. try it for yourself:
    1. starting with the tutorials list below,
    2. pick any tutorial (I would recommend Teach Yourself Scheme in Fixnum Days, by Dorai Sitaram);
    3. start reading the tutorial,
    4. and (THIS IS THE MOST IMPORTANT ASPECT OF LEARNING) DO EXERCISES proposed in the material (at least the easy to medium ones); by do I understand:
      1. think about how to solve the exercise;
      2. solve the exercise by coding it;
      3. test the code by executing it;
      4. play around with the code to make it better readable, more efficient, shorter, but most importantly more aesthetic;
    5. after finishing (at least the medium chapters), try to implement a simple project all by yourself;
  3. dig deeper into the matter by reading one or two books; (by reading I understand the same thing as do above);
  4. use the whole thing for non-trivial projects;

From our faculty[edit]

For the current laboratories there are also other materials available (from our faculty) (on-line):

  • Lisp 2008-2009, from one year ago; (the current material (2009-2010) is greatly based on this work, but with (I hope) major improvements);
  • Lisp 2006-2007, from three years ago; (in turn the previous material (2008-2009) is greatly based on this work (2006-2007), and this again is based on the material available at the next link;)
  • Lisp 2005? -> today, by Cornel Izbasa; (as noted above this is the root of all the above materials;)








This link is a very good place to start.

On-line (audio / video) media[edit]

Miscellaneous links[edit]