chicken-hackers
[Top][All Lists]
Advanced

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

Re: [Chicken-hackers] bit-set? is inconsistently specified


From: Thomas Chust
Subject: Re: [Chicken-hackers] bit-set? is inconsistently specified
Date: Tue, 4 Aug 2009 04:22:10 +0200

2009/8/4 Thomas Bushnell BSG <address@hidden>:
> I think this argument is fallacious.  Chicken Scheme is not consistent
> in using the data-structure order (alist-ref, alist-update!, rassoc,
> compress, tail?) and also has cases where it should use the currying
> order but doesn't.

Hello,

that's a valid point. Probably "tradition" is the reason for most of
these cases.

> [...]  I would
> say as well that the question is fundamentally unimportant, and it is
> far more important to aim for consistency where possible.  As it is, I
> can see no way a piece of Chicken code can reliable use bit-set?, since
> it is unspecified in what order included units are run; you can't
> predict whether using srfi-60 or library will take precedence. [...]

Does SRFI-60 actually exist as a CHICKEN extension?

Anyway, CHICKEN nowadays has a module system, so compilation units can
decide separately which bindings with which semantics they want to
use.

> [...]
> It seems as if you're saying that compatibility has absolutely no weight
> with you.  If that's true, can you explain why?  If it's not true, can
> you describe what weight you think compatibility should play?
> [...]

In my eyes, backwards compatibility is somewhat more important than
cross implementation compatibility. This is especially true for Scheme
where the huge variety of implementations means you have to be extra
careful and expect incompatibilities anyway if you aim for portability
across them.

That doesn't mean that aiming for greater portability is bad, but
complete portability in all areas can probably not be achieved. And I
would not expect completely incompatible API changes in the same
Scheme implementation unless the major version number is bumped.

cu,
Thomas


-- 
When C++ is your hammer, every problem looks like your thumb.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]