[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: issue COMPILED-FUNCTION-REQUIREMENTS, version 4
- To: "sandra%defun@cs.utah.edu"@multimax.encore.com (Sandra J Loosemore)
- Subject: Re: issue COMPILED-FUNCTION-REQUIREMENTS, version 4
- From: Dan L. Pierson <pierson@mist.encore.com>
- Date: Thu, 16 Mar 89 15:21:22 EST
- Cc: Barry Margolin <barmar@FAFNIR.THINK.COM>, cl-compiler@sail.stanford.edu
- In-reply-to: Your message of Thu, 16 Mar 89 13:09:11 -0700. <8903162009.AA05971@defun.utah.edu>
From: sandra%defun@cs.utah.edu (Sandra J Loosemore)
Date: Thu, 16 Mar 89 13:09:11 MST
> Date: Thu, 16 Mar 89 14:18:10 EST
> From: Dan L. Pierson <pierson@mist.encore.com>
>
> What I (and believe Kent) want is a guarantee that it won't signal an
> error; if nothing else works COMPILE will simply apply #'IDENTITY to
> the symbol's function.
If this is the position people really want to adopt, I think we ought
to flush the COMPILED-FUNCTION type. I can't imagine it would be
very useful in declarations if we always allow COMPILE to be a no-op
and never require it to return a COMPILED-FUNCTION.
While I would expect that a COMPILE which resulted in IDENTITY would
not necessarily make the function a COMPILED-FUNCTION, I have absolutely no
objections to flushing the type.
I still think that the minimum requirements for compilation specified in
the proposal should apply to COMPILE-FILE, regardless of what happens
to COMPILE and COMPILED-FUNCTION.
I agree. I would also accept a requirement that COMPILE could cause a
function to become a COMPILED-FUNCTION iff it met the minimum
requirements in the proposal. Note this could still mean, for a
function in which a prepass caused no changes, that IDENTITY could
cause the function to become a COMPILED-FUNCTION. While this may
sound a bit absurd it's consistent with the position we seem to be
adopting that, COMPILE is "macroexpand-completely" in an
interpreted-only implementation.