[Haskell-cafe] Is using Data.Dynamic considered a no-go?

Sterling Clover s.clover at gmail.com
Fri Feb 13 00:20:05 EST 2009


SYB makes very heavy use of Typeable as well, although not, as I  
recall dynamics as such.

Cheers,
Sterl.

On Feb 12, 2009, at 3:40 PM, Don Stewart wrote:

> Notably, extensible exceptions use dynamics, in conjunction with type
> classes and existentials.
>
> A number of solutions to the 'expression problem' involve dynamics.
>
> bugfact:
>> It would be interesting to see when you HAVE to use dynamics, e.g.  
>> when no
>> other solution is possible in Haskell...
>>
>> Right now if I use it, it feels that I'm doing so because I'm too  
>> new to
>> Haskell.
>>
>>
>> On Thu, Feb 12, 2009 at 7:53 PM, Lennart Augustsson  
>> <lennart at augustsson.net>
>> wrote:
>>
>>     You're quite right.  You should only be allowed to derive  
>> Typeable.
>>     (Which could be arranged by hiding the methods of typeable.)
>>
>>     On Thu, Feb 12, 2009 at 6:24 PM, Jonathan Cast
>>     <jonathanccast at fastmail.fm> wrote:
>>> On Thu, 2009-02-12 at 19:04 +0100, Lennart Augustsson wrote:
>>>> They are not unsafe in the way unsafePerformIO is,
>>>
>>> I beg permission to demur:
>>>
>>>  newtype Unsafe alpha = Unsafe { unUnsafe :: alpha }
>>>  instance Typeable (Unsafe alpha) where
>>>    typeOf _ = typeOf ()
>>>
>>>  pseudoSafeCoerce :: alpha -> Maybe beta
>>>  pseudoSafeCoerce = fmap unUnsafe . cast . Unsafe
>>>
>>> Note that
>>>
>>>  pseudoSafeCoerce = Just . unsafeCoerce
>>>
>>>> but I regard them
>>>> as a last resort in certain situations.
>>>> Still, in those situations they are very useful.
>>>
>>> But I would agree with both of these.  As long as you *derive*  
>>> Typeable.
>>>
>>> jcc
>>>
>>>
>>> _______________________________________________
>>> Haskell-Cafe mailing list
>>> Haskell-Cafe at haskell.org
>>> http://www.haskell.org/mailman/listinfo/haskell-cafe
>>>
>>     _______________________________________________
>>     Haskell-Cafe mailing list
>>     Haskell-Cafe at haskell.org
>>     http://www.haskell.org/mailman/listinfo/haskell-cafe
>>
>>
>
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe



More information about the Haskell-Cafe mailing list