[Haskell-cafe] Typeable and Dynamic

Antoine Latter aslatter at gmail.com
Mon Nov 3 19:58:39 EST 2008


On Mon, Nov 3, 2008 at 4:58 PM, minh thu <noteed at gmail.com> wrote:
> Hi,
>
> Given a TypeRep and a Dynamic value with type corresponding to the
> TypeRep, I'd like to be able to use fromDyn *without* specifying a type
> (given as an additional 'default' argument) (since it is somewhat known
> from the TypeRep).
>
> That is, I'd like an undefinedOf that can be used in
>
> extract :: Typeable a => TypeRep -> Dynamic -> a
> extract typerep dyn = fromDyn (undefinedOf typerep) dyn
>
> For instance, if TypeRep is Int,
> extract Int dyn = fromDyn (undefined::Int) dyn
>
> Is it possible to write "extract" ?
>

Yep!  It's already written:

fromDynamic :: Typable a => Dynamic -> Maybe a

It returns Nothing if the Dynamic value was of the wrong type.

See:

http://haskell.org/ghc/docs/latest/html/libraries/base/Data-Dynamic.html#v:fromDynamic

-Antoine


More information about the Haskell-Cafe mailing list