Newsgroups: comp.lang.scheme
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!news.mathworks.com!news.alpha.net!uwm.edu!math.ohio-state.edu!jussieu.fr!oleane!pipex!news.sprintlink.net!siemens!princeton!news.princeton.edu!blume
From: blume@atomic.cs.princeton.edu (Matthias Blume)
Subject: Re: Dynamic inheritance using Scheme?
In-Reply-To: 2wienbe@rzdspc46.informatik.uni-hamburg.de's message of 15 Feb 1995 15:12:26 GMT
Message-ID: <BLUME.95Feb16210837@atomic.cs.princeton.edu>
Originator: news@hedgehog.Princeton.EDU
Sender: news@Princeton.EDU (USENET News System)
Nntp-Posting-Host: atomic.cs.princeton.edu
Organization: Princeton University
References: <hastyD37MLF.B4E@netcom.com> <XJAM.95Feb11110404@fir.CS.Berkeley.EDU>
	<BLUME.95Feb11153416@atomic.cs.princeton.edu>
	<XJAM.95Feb12160319@fir.CS.Berkeley.EDU>
	<3ho663$8ek@agate.berkeley.edu>
	<2WIENBE.95Feb15161226@rzdspc46.informatik.uni-hamburg.de>
Date: Fri, 17 Feb 1995 02:08:37 GMT
Lines: 26

In article <2WIENBE.95Feb15161226@rzdspc46.informatik.uni-hamburg.de> 2wienbe@rzdspc46.informatik.uni-hamburg.de (Axel Wienberg) writes:

       For example, I have a Scheme init
      file that has to work under both SCM and Gambit, so it's full of

      (if scm
	  (eval '(define ...) ...)
	  (eval '(define ...) ...))

      sort of things.

   How about:

   (define f
     (if scm
       (lambda (x)
	  ...)
       (lambda (x)
	  ...)))

Sorry, that won't work in general if one of the two implementations
doesn't understand certain syntactic constructs of the other.
Scheme's IF does not give you separate compilation.

--
-Matthias
