[Haskell-cafe] ANN: jail-0.0.1 - Jailed IO monad

Sebastiaan Visser sfvisser at cs.uu.nl
Thu Aug 27 10:39:09 EDT 2009

On Aug 27, 2009, at 4:16 PM, Eugene Kirpichov wrote:

> Cool!
> However, it does not protect me from doing
> System.IO.Unsafe.unsafePerformIO in whatever fashion I like, does it?

Unfortunately not, hence my disclaimer:

"I would almost dare to say this module is conceptually safe and code  
with the jailed IO type can blindly be trusted. Except, yes  
unfortunately except, unsafePerformIO ruins it all. I would almost  
suggest adding a flag to the compiler to enforce the absence  
ofunsafeRuinMyTypeSafety-alike functions in order to be able to create  
systems in which code can be trusted by its type alone."

Hope there will once be a nice solution to this...

Sebastiaan Visser

2009/8/27 Sebastiaan Visser <sfvisser at cs.uu.nl>:
>> Hi all,
>> I am very pleased to announce the first release of the jail[1,2]  
>> package. A
>> jailed IO monad that can restrict filesystem access for your code.  
>> This
>> package will soon be an integral part of the Salvia web server. (a  
>> new and
>> improved Salvia will be released soon)
>> Basic documentation of the jail package is included below.
>> Any comments, suggestions, audits, etc. are welcome!
>> Gr,
>> --
>> Sebastiaan Visser
>> [1] Source repo: http://github.com/sebastiaanvisser/jail/
>> [2] Hackage: http://hackage.haskell.org/package/jail
>> ...

More information about the Haskell-Cafe mailing list