On Wed, Feb 9, 2011 at 18:43, Steffen Schuldenzucker
<sschuldenzuc...@uni-bonn.de> wrote:
> ...
>>>> let good = appendLog "Foo" "Bar" :: Sealed Admin String
>>>> unseal (undefined :: Admin) good
> "FooBar"

That's true, but putting apart the problem I posed, in my construction
I wouldn't expose unseal directly nor the Sealed constructor. This
way, you should not be able to recreate the unseal function and you'd
be given only specialized "unseal" functions for each role, like
unsealAsAdmin, unsealAsUser and so on.

Thank you for adding to the discussion.

-- 
Cristiano

GPG Key: 4096R/C17E53C6 2010-02-22
Fingerprint = 4575 4FB5 DC8E 7641 D3D8  8EBE DF59 B4E9 C17E 53C6

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to