[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-hackers] [PATCH] Re: make check failing
From: |
Peter Bex |
Subject: |
Re: [Chicken-hackers] [PATCH] Re: make check failing |
Date: |
Sat, 5 Jan 2013 00:24:52 +0100 |
User-agent: |
Mutt/1.4.2.3i |
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.
Cheers,
Peter
--
http://sjamaan.ath.cx