Re: [Haskell-cafe] Concept for "equal but unknown"

To me this sounds like the Reader monad: You have a value that depends on something that is yet to be decided upon. data SomeCargo = SomeCargo { decide_attribute1 :: ContainerID -> Attr1 decide_attribute2 :: ContainerID -> Attr2 ... } data ConcreteCargo = ConcreteCargo { attribute1 :: Attr1 attribute2 :: Attr2 } withID :: SomeCargo -> ContainerID -> ConcreteCargo If the type ContainerID is searchable [1] then you can have an Eq instance even for the SomeCargo type. That is, two containers are equal if whenever the same ID gets assigned, they have the same properties. The technical term would be "indistinguishable in all contexts". -- Olaf [1] http://math.andrej.com/2008/11/21/a-haskell-monad-for-infinite-search-in-fin...
participants (1)
-
Olaf Klinke