From: "alphablock" <alphablock@wanadoo.fr>
To: "Alex Baretta" <alex@barettadeit.com>, "Ocaml" <caml-list@inria.fr>
Subject: Re: [Caml-list] (Mostly) Functional Design?
Date: Mon, 18 Jul 2005 17:38:38 +0200 [thread overview]
Message-ID: <008601c58bae$c576e140$322cf8c1@oemcomputer> (raw)
In-Reply-To: <42DBCA16.3000002@barettadeit.com>
i love the internet and wise people giving me wise answers :)
- damien
----- Original Message -----
From: "Alex Baretta" <alex@barettadeit.com>
To: "alphablock" <alphablock@wanadoo.fr>; "Ocaml" <caml-list@inria.fr>
Sent: Monday, July 18, 2005 5:26 PM
Subject: Re: [Caml-list] (Mostly) Functional Design?
> alphablock wrote:
> > May be there are many less FP solutions than OOP solutions just because
> > there are many less FP problems than OOP problems.
> >
> > Or may be i am plain naive, who knows...
> >
> > - damien
>
> I would not say so. It is just the problems tend to admit a fairly
> simple--although generally not trivial solution. This does not justify a
> large scale attempt to catalog all FP "design patterns" in a single
> book. Let me try to list a few I can readily think of.
>
> * Indefinite recursion through tail call optimization
> * Systematic elimination of explicit or implicit (recursive) cycles
> whenever an iterator is available. If an iterator is not available for a
> given data structure, it is often advisable to define one.
> * Order preservation of sequential data structures such as lists through
> the use of an even number of order reversing tail-recursive algorithms.
> * Late-binding of recursive calls
> * Multi-stage programming through partial evaluation
> ...
>
> These ideas are more general coding strategies requiring a specific
> design from the programmer, rather than parametrized design patterns
> abstracting from the (absence of) cognitive abilities of the programmer.
>
> Alex
>
>
> --
> *********************************************************************
> http://www.barettadeit.com/
> Baretta DE&IT
> A division of Baretta SRL
>
> tel. +39 02 370 111 55
> fax. +39 02 370 111 54
>
> Our technology:
>
> The Application System/Xcaml (AS/Xcaml)
> <http://www.asxcaml.org/>
>
> The FreerP Project
> <http://www.freerp.org/>
>
> _______________________________________________
> Caml-list mailing list. Subscription management:
> http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
> Archives: http://caml.inria.fr
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> Bug reports: http://caml.inria.fr/bin/caml-bugs
>
next prev parent reply other threads:[~2005-07-18 15:40 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-07-14 18:00 Kyle Consalus
2005-07-18 7:59 ` [Caml-list] " Robert Morelli
2005-07-18 9:22 ` Alex Baretta
[not found] ` <42DB78D3.7010401@andrej.com>
2005-07-18 10:01 ` Alex Baretta
2005-07-18 18:15 ` Robert Morelli
2005-07-18 18:45 ` Alex Baretta
2005-07-18 18:56 ` padiolea
2005-07-18 19:19 ` Jon Harrop
2005-07-18 19:38 ` Jon Harrop
2005-07-18 21:27 ` skaller
2005-07-18 21:55 ` Alwyn Goodloe
2005-07-18 22:16 ` Paul Snively
2005-07-19 0:45 ` Jonathan Bryant
2005-07-18 21:37 ` skaller
2005-07-18 22:00 ` Kenneth Oksanen
2005-07-18 9:29 ` Mark Meyers
2005-07-18 9:56 ` Large scale and FP (was: Re: [Caml-list] (Mostly) Functional Design?) David MENTRE
2005-07-18 18:11 ` Large scale and FP Robert Morelli
2005-07-18 14:08 ` [Caml-list] (Mostly) Functional Design? james woodyatt
2005-07-18 16:37 ` Alwyn Goodloe
2005-07-18 14:21 ` alphablock
2005-07-18 15:26 ` Alex Baretta
2005-07-18 15:38 ` alphablock [this message]
2005-07-18 17:17 ` Doug Kirk
2005-07-18 18:14 ` Alex Baretta
2005-07-19 7:42 ` james woodyatt
2005-07-19 9:35 ` Robert Morelli
2005-07-19 16:53 ` james woodyatt
2005-07-19 17:13 ` Paul Snively
2005-07-19 23:58 ` Jon Harrop
2005-07-20 0:29 ` Paul Snively
2005-07-18 18:23 ` padiolea
2005-07-18 19:45 ` Gerd Stolpmann
2005-07-18 22:16 ` skaller
2005-07-19 0:48 ` Chris Campbell
2005-07-19 20:14 ` Some Clarifications Robert Morelli
2005-07-20 6:18 ` [Caml-list] " Ville-Pertti Keinonen
2005-07-24 0:04 ` Robert Morelli
2005-07-24 2:30 ` Paul Snively
2005-07-24 7:37 ` Alex Baretta
2005-07-24 8:08 ` Robert Morelli
2005-07-24 12:23 ` David Teller
2005-07-24 18:29 ` skaller
2005-07-24 18:51 ` Paul Snively
2005-07-24 12:42 ` Gerd Stolpmann
2005-07-25 7:23 ` Ville-Pertti Keinonen
2005-07-20 7:34 ` David MENTRE
2005-07-27 15:37 ` Robert Morelli
2005-07-27 20:33 ` skaller
2005-07-27 23:48 ` Paul Snively
2005-07-20 16:28 ` Damien Doligez
2005-07-24 14:51 ` Robert Morelli
2005-07-24 16:11 ` David MENTRE
2005-07-25 12:21 ` Damien Doligez
2005-07-25 15:47 ` Richard Jones
2005-07-22 5:18 ` [Caml-list] (Mostly) Functional Design? Marius Nita
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='008601c58bae$c576e140$322cf8c1@oemcomputer' \
--to=alphablock@wanadoo.fr \
--cc=alex@barettadeit.com \
--cc=caml-list@inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).