main features of functional programming paradigm

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

main features of functional programming paradigm

abigail-7
Hi,

I would like to ask about what are tha main features
of functional programming?

Additionally, about FAD: A Functional Analysis and
Design Methodology

What kind of software can i develop with this
methodology?

thanks for your answers

Abigail.

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¬°gratis!
Reg√≠strate ya - http://correo.espanol.yahoo.com/ 
_______________________________________________
Haskell-Cafe mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell-cafe
Reply | Threaded
Open this post in threaded view
|

Re: main features of functional programming paradigm

Gregory Woodhouse

--- Abigail <[hidden email]> wrote:

> Hi,
>
> I would like to ask about what are tha main features
> of functional programming?

Caveat: I'm a relative newcomer to functional programming myself,
certainly not an expert.

There's the obvious definition: Functional programming is writing
programs in the form of functions that are evaluated, as opposed to
procedures that are evaluated.  but even if it's tecnically correct,
I'm not that such a distinction helps very much. I know it uses Scheme
(a variety of Lisp) rather than Haskell, but ch. 3 of "The Structure
and Interpretation of Programming Languages" (SICP) has a nice
treatment of mutable data structures on the one hand, and delayed
evaluation on the other. It's interesting because it gives some insight
into the complementary nature of the approach taken by pure languages
like Haskell (called streams in SICP), and non-functional techniques
such as assignment.

I like to think of this as a kind of time/space duality. If you think
about the sequence of "events" during a computation, then you are
squarely on the side of time, and your computational model is decidely
imperative. If you're willing to let go a bit of time, and instead
start thinking about comprehensions and (potentially) infinite lists,
then you've moved over into the space camp, and your programming style
becomes more functional.

===
Gregory Woodhouse  <[hidden email]>
"All truth passes through three stages: First, it is ridiculed.
Second, it is violently opposed. Third, it is accepted as
being self-evident."
--Arthur Schopenhauer
_______________________________________________
Haskell-Cafe mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell-cafe
Reply | Threaded
Open this post in threaded view
|

Re: main features of functional programming paradigm

Jared Updike
In reply to this post by abigail-7
> I would like to ask about what are tha main features
> of functional programming?

If you are new to functional programming, read this
http://haskell.org/haskellwiki/Introduction

> What kind of software can i develop with this
> methodology?

I'm not sure what you mean by your question as it is very general. (If
you are refering to the "methodology" in the FAD paper at
http://www.cs.kent.ac.uk/pubs/2001/1152/ , I haven't read it so I
can't help you there.) With Haskell, you can develop pretty much any
kind of software, as any other programming language. See
http://haskell.org/haskellwiki/Applications

(If you want to develop a compiler or interpreter, you are in luck as
functional programming languages are very good for developing this
kind of software.)

What kind of software are you intending to develop?

  Jared.
--
http://www.updike.org/~jared/
reverse ")-:"
_______________________________________________
Haskell-Cafe mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell-cafe