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

Re: Can a functional language be sequential?




   Date: Mon, 2 Jun 2003 13:33:32 -0400
   From: "Michael St . Hippolyte" <mash@brooklyndigital.net>
   To: Guy Steele - Sun Microsystems Labs <Guy.Steele@sun.com>
   Cc: ll1-discuss@ai.mit.edu
   Subject: Re: Can a functional language be sequential?
   
   On 2003.06.02 12:13 Guy Steele - Sun Microsystems Labs wrote:
   > 
   > Let me ask a question first, the answer to which may
   > shed some light: why is it specified in Bento that the
   > constructions be evaluated "in sequence"?  Would it
   > make a difference if the constructions were evaluated
   > in some arbitrary order, or concurrently?  If so, what
   > difference would it make?
   
   The purpose of Bento is to construct text-based data objects
   such as web pages.  An object can be assembled from parts,
   represented as a list of constructions.  For this purpose, the
   actual sequence of evaluation doesn't matter, as long as the
   final results are put together in the proper order.
   
   Order of evaluation does matter, however, when the list of
   constructions contains two or more calls to code external to
   Bento.  For this reason, I think it's reasonable to specify
   that external calls will be performed in the order they appear
   in the list of constructions.

Then I might describe Bento as having a functional framework
but also having nonfunctional primitive operations whose
use renders a program nonfunctional in nature, thus requiring
the language to have additional restrictions on effective
order of evaluation that would not be necessary in a purely
functional language.

--Guy Steele