At Tue, 16 Oct 2012 17:42:06 -0400, Asumu Takikawa wrote:
> On 2012-10-16 15:27:46 -0400, [email protected] wrote:
> > 843c722 Matthew Flatt <[email protected]> 2012-10-16 15:10
> > :
> > | add an argument to `{chaperone,impersonate}-prompt-tag'
> > |
> > | The new argument gets to filter results that come from a
> > | non-composable continuation that replaces one delimited
> > | by a prompt using the chaperoned/impersonated prompt tag.
>
> Thanks. One thing I noticed is that I don't think this is quite enough
> to build contracts that provide full protection for `call/cc`.
Ah, right. The part that I implemented might be useful for using a
prompt tag that is imported with a contract into a typed context, but
but one that is exported with a contract from a typed context.
I've implemented the other direction --- one more argument to
`{chaperone,interpose}-prompt-tag' --- and I'll push that soon.
It turns out that there was also a problem with multiple uses of a
continuation that has a prompt, where the different uses include
different uses of the prompt (some aborting to the prompt and some
replacing the delimited continuation with a non-composable one). That
also will be fixed.
_________________________
Racket Developers list:
http://lists.racket-lang.org/dev