From: Peter Bex <[email protected]> Subject: Re: [Chicken-hackers] [PATCH] Re: make check failing Date: Sat, 5 Jan 2013 00:24:52 +0100
> On Sat, Jan 05, 2013 at 12:16:21AM +0100, Felix wrote: >> > Actually, if you want to write portable code you must, and you must also >> > wrap it in inexact->exact. However, since the FFI isn't portable anyway >> > it won't matter that much, except when if decide to switch to supporting >> > bignums in core. When that happens, all code that doesn't round and >> > convert to exact will break unless we decide to keep this for backwards >> > compat for a while. But eventually it'll break. >> >> I don't write portable code, and a switch to supporting bignums in the >> core-system is not decided on, yet. > > True, but it could happen! Maybe not this year, but who knows what'll > happen the next 10 years :) > >> > (vector-ref (vector 1 2 3 4) 1.5) shouldn't >> > work, why then should ((foreign-lambda void do-something int) 1.5), >> > especially considering vector-ref could reasonably be defined as this: >> > >> > (lambda (v i) >> > (check-type 'vector v) >> > ((foreign-lambda scheme-object C_block_item scheme-object int) v i))? >> >> Because these are two completely different things, and you know that. > > Well, yes. But still, I don't see why it has to be different. If you > really feel strongly about it I'll push your change as-is; I don't feel > as strongly about it; I just have this faint hunch that it'll help > prevent some small class of bugs. Just say the word. I have pushed your amended patch. There is no convincing argument that I could give. cheers, felix _______________________________________________ Chicken-hackers mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/chicken-hackers
