[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:


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


Best of wishes!

More information about the Tutor mailing list