[Tutor] Terminology WAS Whats so good about OOP ?

Danny Yoo dyoo at hkn.eecs.berkeley.edu
Mon Mar 14 00:53:36 CET 2005



> > <SNIP>
> > Where I come from, the output of a function is determined by the input
> > to the function.
>
> 	Well, actually, your being upset at that is the exact point of
> functional programming languages: in functional programming, the output
> of a function is determined by its input, and *only* its input.
> Therefore, there are no side-effects (variables being one) calling a
> function twice with the same arguments will *always* yield the same
> result.
>
> 	The only time this paradigm is broken is (of course) when dealing
> with I/O.

Hi Max,


Just as an off-topic tangent: the "of course" part might need
qualification.  *grin*

Haskell, one of the main representatives of the functional programming
languages, uses the concept of "monads" to handle I/O.  Philip Wadler has
a whole page dedicated to monads:

    http://homepages.inf.ed.ac.uk/wadler/topics/monads.html

where I/O fits in cleanly with the functional programming paradigm.
There appears to be a monad tutorial page here:

    http://www.nomaware.com/monads/html/

Best of wishes!



More information about the Tutor mailing list