Friedrich Dominicus <[EMAIL PROTECTED]> writes:

>>>> Could you explain why Lisp isn't a FP language?

>>> functions (...) reside in their own namespace
>>> iteration and side effects are not particularly discouraged
>>> (...and commonly used)

>> Does that then not just make it a functional language that can be (and has
>> been) 'abused'?

Which in a nutshell exemplifies why we have these debates.  Let's
realize that whether a programming language is functional or not, is a 
question of semantics, and a question of degree.

Haskell is clearly more functional than Lisp, which is more functional 
than C++.  On the other hand, there's no good way to agree on where
exactly to draw the line, so some people (in particular coming from
the imperative camp?) think Lisp is functional, and therefore
incomprehensible and useless, and others (coming from the functional
camp, entrenched somewhere in academia) think Lisp is imperative, and
unworthy of attention.  *shrug*

> Why abused? Why should the "pure" functional way the best for
> programming? Couldn't it be that a language which supports other
> features besides functionl elements. 

Indeed.  Could it be that Lisp supports, yea, even encourages,
non-functional programming?  Why, then,  is it important to you that
it is considered a functional programming language?

> I would think Lisp among other things is a functional language. 

Functional features like higher order functions are commonly used, so
Lisp is certainly not as defunctional as e.g. Pascal.  Would you
consider Python a functional language?

Finally, it isn't obvious that more "functionality" in languages is
necessarily good, and I think Lisp illustrates that.  I think if I had 
to use one language for everything, CL would definitely be a
candidate.  Of course, Haskell is so much prettier.

-kzm
-- 
If I haven't seen further, it is by standing in the footprints of giants

Reply via email to