[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: no constants please



Richard Kelsey <kelsey@xxxxxxx> writes:

> No, (a) he gave a reason why you might have multiple C values
> representing Scheme's #F.  He didn't give a reason why
> you would allocate those values on the fly (as opposed to
> creating them when the corresponding heap is created).

I gave that as an explanation for why you can't use == in place of
eq?.

Moreover, this also shows why you want SCHEME_FALSE to be a function:
so you can return a better value for #f than some global default; you
want a heap-specific or thread-specific one.

I also agree with Tom Lord's point that read-barrier GC strategies way
want to require an eq? other than ==.

> And (b), my point is not that there are no advantages for
> doing so, but that any benefit from it would be outweighed
> by associated costs.

What costs on earth does it impose on the FFI?  

Thomas