[Numpy-discussion] OpenOpt Suite release 0.45

Robert Kern robert.kern at gmail.com
Tue Apr 9 07:29:20 EDT 2013


On Tue, Apr 9, 2013 at 4:15 PM, Dmitrey <tmp50 at ukr.net> wrote:
>
>
> --- Исходное сообщение ---
> От кого: "Robert Kern" <robert.kern at gmail.com>
> Дата: 16 марта 2013, 22:15:07
>
> On Sat, Mar 16, 2013 at 6:19 PM, Dmitrey <tmp50 at ukr.net> wrote:
>>
>>
>> --- Исходное сообщение ---
>> От кого: "Robert Kern" <robert.kern at gmail.com>
>> Дата: 16 марта 2013, 19:54:51
>>
>> On Sat, Mar 16, 2013 at 10:39 AM, Matthieu Brucher
>> <matthieu.brucher at gmail.com> wrote:
>>> Even if they have different hashes, they can be stored in the same
>>> underlying list before they are retrieved. Then, an actual comparison is
>>> done to check if the given key (i.e. object instance, not hash) is the
>>> same
>>> as one of the stored keys.
>>
>> Right. And the rule is that if two objects compare equal, then they
>> must also hash equal. Unfortunately, it looks like `oofun` objects do
>> not obey this property. oofun.__eq__() seems to return a Constraint
>> rather than a bool, so oofun objects should simply not be used as
>> dictionary keys.
>>
>> It is one of several base features FuncDesigner is build on and is used
>> extremely often and wide; then whole FuncDesigner would work incorrectly
>> while it is used intensively and solves many problems better than its
>> competitors.
>
> I understand. It just means that you can't oofun objects as dictionary
> keys. Adding a __hash__() method is not enough to make that work.
>
> No, it just means I had mapped, have mapped, map and will map oofun objects
> as Python dict keys.

Well, it's your software. You are free to make it as buggy as you wish, I guess.

--
Robert Kern



More information about the NumPy-Discussion mailing list