Leslie P. Polzer wrote:
> On Aug 29, 4:02 am, John Fremlin <[email protected]> wrote:
> 
>> The problem I think is that cl-cont doesn't understand ccl's
>> compiler-let.
> 
> You're probably right, but CCL's compiler wants to handle that
> more gracefully I bet.

compiler-let is a special form that doesn't exist in the ANSI standard 
and so it is a bit dodgy to have things expand to it (clearly a 
violation of ANSI). However, Lispworks uses it too for things like 
defmethod, so teaching cl-cont about it seems like a good idea (if it's

>> Another example where macroexpand-dammit should step in
>> :-)
> 
> Since you mention it, where have we left off discussing this?

I thought the problem was not so much the absence of discussion but the 
absence of a finished and tested version of macroexpand-dammit ;-)

I fixed a few bugs (http://john.freml.in/macroexpand-dammit) but haven't 
got the testsuite together. One issue that is wrong is the handling of 
type declarations for symbol-macrolets, but I'm not sure whether it is 
possible to handle that correctly at all as one isn't allowed to affect 
the macroexpansion. (Declarations are generally a nuisance -- 
http://john.freml.in/declare-and-parsing-common-lisp.)

>> Perhaps the most practical solution is to make assert not be call/cc
>> transformed.
> 
> Got patch? :)

In teepeedee2 there are a bunch of macros IIRC for easily explicitly 
declaring forms not to be transformed by cl-cont. . . Or at least I 
think so :-)


PS. To complicate matters further, it turns out that cl-cont implements 
delimited continuations, but the call/cc is actually more like Scheme's 
return/cc -- it has quite different semantics.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"weblocks" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/weblocks?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to