[bitc-dev] Re: BitC issues
Swaroop Sridhar
swaroop at cs.jhu.edu
Mon Dec 20 17:01:43 EST 2004
1)
Jonathan S. Shapiro wrote:
>
> Definitely not! The top level binding should be an uncompleted LET. It
> is very important not to allow identifiers to be redefined. It will
> bugger separate compilation all to hell if we allow this.
>
>
I agree. But we may want to have some kind of 'undefine' or rather
'redefine', along with the usual define. This will enable the programmer
to write:
use matlib.bc (* BitC library containing definitions for +, -, *, ..
etc *)
...
...
redefine + (lambda x (lambda y x*y+2))
...
...
Otherwise, since we have a single name-space, in order to redefine +
the user has to:
-- redefine + in a let binding everywhere, or
-- write his own matlib.ad, which is matlib.bc with the
new definition of +
Is there any other way out?
2) Is there any reason to define lambda as
lambda => (lambda pattern expr+)
rather than
lambda => (lambda pattern expr), and then use begin .. end?
The same holds for let, let* and letrec.
3) What is the syntax for comments?
More information about the bitc-dev
mailing list