On Mon, Jan 20, 2014 at 4:16 AM, Taylor R Campbell <campb...@mumble.net>wrote:
> Date: Sun, 19 Jan 2014 10:58:15 -0700 > From: Matt Birkholz <p...@birchwood-abbey.net> > > > From: Chris Hanson <c...@chris-hanson.org> > > Date: Fri, 17 Jan 2014 22:40:01 -0800 > > > > R7RS defines parameters, which we'll eventually need to implement > anyway > > for compliance. Converting the system's bindings over to parameters > is > > probably the right thing for a variety of reasons. > > Then I will stick it to master, one binding per commit. > > Let's keep it in a branch until we get 9.2 out, at least. > > Comply with R7RS? Does it not require multiple-value returns? > > Probably, but it's a bug that we don't implement them right. > > Lying around somewhere I might have a local branch with a stab at > implementing them with zero overhead for the single-return, > single-receive case by adding a return code for the multiple-receive > case. In principle this should work, but integrating it with compiled > code made it tricky. > It's pretty trivial to support MVs entirely in user-space by wrapping them in a special object, at zero overhead for the single value case. You do need to add an extra check for the wrapped type in call/cc, but there's no compiler support required. -- Alex
_______________________________________________ MIT-Scheme-devel mailing list MIT-Scheme-devel@gnu.org https://lists.gnu.org/mailman/listinfo/mit-scheme-devel