Teaching Children Programming and Linux

D. Hugh Redelmeier hugh-pmF8o41NoarQT0dZR+AlfA at public.gmane.org
Sat Jul 19 04:11:29 UTC 2008


| From: Lennart Sorensen <lsorense-1wCw9BSqJbv44Nm34jS7GywD8/FfD2ys at public.gmane.org>

| Personally I think OOP is a horrible idea that will eventually go away.
| The future is functional programming since it is much simpler to
| automatically parallelize and allows you to worry about what you want to
| do rather than how to do it (where the programmer is often wrong and the
| compiler maker knows much better).

I've been a fan of functional programming for 30 or 40 years.  But I
don't use a functional language.  I like to think that my programming
style is influenced by the ideas of functional programming.

- compilers may better handle small stuff, especially if the
  programmer has better things to do.  I don't know about the big
  stuff -- that may take co-operation.  Delaying the mapping of the
  program onto the hardware, facilitated by FP, should be a big win.

- I suspect that functional programming is not as intuitive to
  beginners.  After all, anthropomorphising a single processor moving
  values around is easier than understanding a network.  This does not
  scale, but kids aren't likely to be concerned with scaling.

- the right way to understand programs is to understand induction.
  I remember when inductive proof was introduced to my grade 13 math
  class (Math B, I think).  Very few "got it".  I think that kids
  might not want to start there.

- The equivalent of objects (synthetic datatypes) is needed in
  functional programming.  But the formal concept of an object
  (something that retains its identity even as it changes state) is
  antithetical to functional programming

Logo, for example, encourages a functional style to a certain extent.
That may be a good balance.
--
The Toronto Linux Users Group.      Meetings: http://gtalug.org/
TLUG requests: Linux topics, No HTML, wrap text below 80 columns
How to UNSUBSCRIBE: http://gtalug.org/wiki/Mailing_lists





More information about the Legacy mailing list