Todd Jonker wrote:
On 2/11/03 7:15 PM, [EMAIL PROTECTED] wrote:


Can you briefly clarify "Functional Model" (even with just a link to
somewhere else) since it can be easily confused with other definitions
of functional programming?

-Mark

Good question, Mark.  I'll do my best without digging too deep into the
COMP411 archive...
Hey Todd, thanks for writing this up. I've heard of FP before and others have explained it but this one really cinched it for me. (Or maybe I was just ready to understand it this time.)

In the real world, however, imperative languages reign, and there are
relatively few purely-functional languages, and not a one that's commonly
used outside of academia.  They _are_ used quite a bit in academia, since
they allow for very complete and rigorous mathematical models and analyses,
useful for things like proving correctness of programs.  The Lambda Calculus
is in fact very widely used means of defining the semantics of programming
languages, whether they by functional or imperative or "other".

There are, however, quite a few "mostly functional" languages that provide
imperative features, but where the bulk of the  programming is typically
done in a functional way.  Lisp, Scheme, and ML all fall into this
category... In those languges the use of an assignment is a pretty rare
sighting.

[ Most OO languages are pretty aggressively imperative.  It's damn near
impossible to write a useful Java program without using an assignment. ]
I don't know if it qualifies as a "functional programming language", but I've just recently learned that Python treats functions as first class objects which can be declared anonymously and passed around as any other value. It is also a respectable OO scripting language in its own right.

I think it lets you take a FP paradigm approach but does not require it of you.



Erik


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to