CL implementation questions
Charles Turner
chturne@gmail.com
Thu Apr 5 15:46:00 GMT 2012
Thanks for your time Jamison.
My second iteration is attached. Just supports the the proper DECLARE
syntax and an optional TYPE symbol, the framework is in place for
further expansion of DECLARE now.
On 4 April 2012 23:16, Jamison Hope <jrh@theptrgroup.com> wrote:
> On Apr 4, 2012, at 2:37 PM, Charles Turner wrote:
>> I had to override Translator#checkDefaultBinding to get type lookups
>> working. As with the rest of this patch, it's not nice, just
>> exploration.
>
> I have a feeling we'll find that some functionality currently found in
> kawa.standard.Scheme (such as getNamedType) ought to be pulled out into
> something more readily usable by other languages.
I think most of the type stuff in Scheme would be better at a higher
level in the inheritance chain. Most of the type in the type<>name
(and vice versa) could be reused with CL, there's also a lot of
overflap with the defProcStFld stuff. The two remaining problems I
have is that a) rewrite_body is doing a fair bit of work twice
(scanBody). I could refactor Translator#rewrite_body so that you can
call another rewriter which expects its input to have already been
scanned. And b) musch of the stuff in
SchemeCompilation#checkDefaultBinding could be used from other Lisps
too, IIUC.
Charles.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: declare.diff
Type: application/octet-stream
Size: 4486 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/kawa/attachments/20120405/43283e82/attachment.obj>
More information about the Kawa
mailing list