Path: utzoo!attcan!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!rex!caesar!fs From: fs@caesar.cs.tulane.edu (Frank Silbermann) Newsgroups: comp.lang.functional Subject: Re: Intermediate Codes for Functional Languages Message-ID: <5487@rex.cs.tulane.edu> Date: 19 Dec 90 16:32:15 GMT References: <1856@oravax.UUCP> <5477@rex.cs.tulane.edu> <1990Dec18.174225.27885@rice.edu> Sender: news@rex.cs.tulane.edu Organization: Computer Science Dept., Tulane Univ., New Orleans, LA Lines: 26 In article <1990Dec18.174225.27885@rice.edu> rama@titan.rice.edu (Ramarao Kanneganti) writes: > Usually, it advantageous to have the domain > completely matching the language we are defining. (i.e. with no elements undenotable via the syntax) > In the case of coalesced products, (i.e. "strict" cons) > it can be embedded as a projection of the product domain. > But, the sequential functions are not embeddable > as a continous retraction of the continuous function space. > Still, people use the continuous model to denote the meanings, > as there is no other model that is fully abstract > with respect to sequential function space. Aside from a desire to avoid unnecessary complexity, what are some of the advantages of using a domain that contains only those elements which can be denoted from the language? (I ask this because sometimes adding extra elements can make some aspects simpler -- just as judicious use of "don't cares" can simplify manufacture of a logic gate.) Will the advantages still hold, even when other constructors (i.e function abstraction) _do_ result in extra domain elements? Frank Silbermann fs@cs.tulane.edu Tulane University New Orleans, Louisianna USA