Newsgroups: comp.lang.lisp.x
Path: cantaloupe.srv.cs.cmu.edu!bb3.andrew.cmu.edu!newsfeed.pitt.edu!scramble.lm.com!news.math.psu.edu!news.cse.psu.edu!uwm.edu!vixen.cso.uiuc.edu!newsfeed.internetmci.com!in2.uu.net!hearst.acc.Virginia.EDU!murdoch!elvis.med.Virginia.EDU!sdm7g
From: sdm7g@elvis.med.Virginia.EDU (Steven D. Majewski)
Subject: Re: Problem with function APPLY
X-Nntp-Posting-Host: elvis.med.virginia.edu
Message-ID: <Dq0r82.8xz@murdoch.acc.Virginia.EDU>
Sender: usenet@murdoch.acc.Virginia.EDU
Organization: University of Virginia
References: <4km2sb$t1m@inet-server.sit.fi> <3038324273693168@arcana.naggum.no> <4ktrnd$nkp@inet-server.sit.fi>
Distribution: inet
Date: Wed, 17 Apr 1996 18:26:26 GMT
Lines: 37

In article <4ktrnd$nkp@inet-server.sit.fi>,
Peter Horvath PH.D. <peter.horvath@staff.sit.fi> wrote:
>By the way, meanwhile I got the real and relevant answer from 
>Thomas Almy:
>
>"You can't use APPLY with special functions (FSUBR or MACROS). 
>The basic reason is that APPLY evaluates the arguments while 
>special functions require an unevaluated argument list. Common 
>Lisp doesn't allow this either."

I think if you understood either answer, you would notice that
they are essentially the same.

>So, it is because of the compatibility with COMMON LISP standard 
>why logical functions belong to other type of built-in functions 
>than the arithmetical ones. Arithmetical functions are Subr-s 
>while logical ones are Fsubr-s.

You've got the logic backwards: it has nothing to do with the
Common Lisp Standard except that common Lisp follows every other
Lisp variant in making a distinction between functions and special
forms. 'and' is implemented as a special form ( as are 'if' , 'cond'
et.al. ) because the only way it can behave sensibly is if it doesn't
evaluate its arguments ( which means it can't be implemented as a 
function. ) 

[ Erik has *earned* the right to be flamed on many occasions, so I 
  hate to see him unfairly bashed for giving you a reasoned and 
  reasonable answer. Get a clue! Read the Lisp FAQ or any basic
  book on Lisp programming! ] 


---|  Steven D. Majewski   (804-982-0831)  <sdm7g@Virginia.EDU>  |---
---|  Computer Systems Engineer          University of Virginia  |---
---|  Department of Molecular Physiology and Biological Physics  |---
---|  Box 449 Health Science Center    Charlottesville,VA 22908  |---
 [ "The grass is always greener, except at t=0" - Stan Kelly-Bootle ]
