Re: When is it good to use #+implementation ?



On 2008-01-30, Thomas A. Russ <tar@xxxxxxxxxxxxx> wrote:
Well, the conditionalization is designed to meet the need of doing
something different based on the feature being tested. This is used to
make allowances for optional packages that might be installed, and to
test for various levels of conformance.

Occassionally it can also be used to work around bugs in particular
implementations.

So these are all valid reasons to use the construct. So, go ahead and
use it to work around this bug.

All tests pass if I use
(make-hash-table :size #+poplog (max 1 size) #-poplog 0)

Shouldn't the last one be "#-poplog size" instead of "#-poplog 0", to
give you the same results when size is non-zero?

Yes, you're right.
I have just released a new version with the proper fix.

Now, if you end up doing this alot, then you might want to introduce
your own helper function that reduces the number of places in the code
where there is such conditional constructs. That makes maintenance
easier, and also protects you from inadvertently omitting it:

Yes, of course.
It seems that changing this Poplog behavior is not straightforward
(I asked on comp.lang.pop), so this one will have to stay... But
I don't plan to add many conditional reads.

Thanks for your response!
J.

.



Relevant Pages

  • Re: Who wants to maintain KR list for stable releases?
    ... Tracking feature or implementation suggestions wouldn't make sense. ... write what they think the kernel should do but who never write a single ... 'My' Linux kernel subsystem has a long virtual TODO list, with bugs, ...
    (Linux-Kernel)
  • Re: starting with 2.7
    ... > interfaces are probably ready to go regardless. ... because you don't see any use to that particular feature that you can guarantee ... >> justify it anymore. ... It's possible that 2.6 has fewer of those known bugs, ...
    (Linux-Kernel)
  • Re: Why has the Metrowerks sign been taken down?
    ... > IB has so many bugs I doubt one or two more would make much difference. ... > - You're basing this on the assumption that this feature would take one ... > to read 'MENU' resources and convert them into menus in a nib. ... > haven't had their menus converted to nibs yet. ...
    (comp.sys.mac.programmer.codewarrior)
  • Re: [opensuse] curl error-connection time out
    ... I think this would be a great feature and would greatly help the ... downloading. ... When i changed the URL for my repositories back to ... Note that this is to be regarded as a prototype and there may be bugs - ...
    (SuSE)
  • Re: In VC++7.1 How do I...
    ... that is a wonderful feature. ... truly weird bugs that either fail to compile with VC7 or get runtime checks that VC6 ... Joseph M. Newcomer ... MVP Tips: http://www.flounder.com/mvp_tips.htm ...
    (microsoft.public.vc.mfc)