[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: OT: functional languages (was: Politics of Java)



Thus spake Craig Dickson (crdic@pacbell.net):

> Pete Harlan wrote:
> 
> > Lisp and Scheme are not functional languages.  A functional languge is
> > one that doesn't support mutating data; Lisp and Scheme very much do.
> 
> I certainly agree about Lisp. With Scheme, it's a bit trickier,
> especially since the history is that Scheme was first invented to be a
> Lisp-like language for "programming with functions" using recursion,
> first-class functions, dynamic scoping, and continuations -- essentially
> Lisp with the most non-FP features thrown out, plus dynamic scoping and
> continuations, which were not features of Lisp, and are very common in
> modern functional languages. By today's standards, Scheme is certainly
> not a "pure" functional language, but whether it is an "impure" one, or
> not one at all, is not so easy to say. Opinions vary.

I'd certainly want to call it functional and would go further and say
that LISP is also an impure functional language. PH's dikat is IMHO a
little too rigid. What about Milner's SML, which also supports
side-effects. That is invariably, in my experience, referred to as a
functional language.

The importance of LISP, Scheme, ML, Miranda, et. al. is surely the
establishing of a functional programming *style*, which these
languages encourage (to a greater or lesser extent).

After all, you *can* do FP in C or Pascal - it's just a lot more work.
-- 
|Deryk Barker, Computer Science Dept. | Music does not have to be understood|
|Camosun College, Victoria, BC, Canada| It has to be listened to.           |
|email: dbarker@camosun.bc.ca         |                                     |
|phone: +1 250 370 4452               |         Hermann Scherchen.          |



Reply to: