safer-file-handles: Type-safe file handling
This package adds three safety features on top of the regular
System.IO
file handles and operations:
Regional file handles. Files must be opened in a region. When the region terminates all opened files are automatically closed. The main advantage of regions is that the handles to the opened files can not be returned from the region which ensures no I/O with closed files is possible.
Explicit IOModes. The regional file handles are parameterized by the IOMode in which they were opened. All operations on handles explicitly specify the needed IOMode. This way it is impossible to read from a write-only handle or write to a read-only handle for example.
Type-safe filepath creation and manipulation using the
pathtype
package.
The primary technique used in this package is called "Lightweight monadic regions" which was invented by Oleg Kiselyov and Chung-chieh Shan. See:
http://okmij.org/ftp/Haskell/regions.html#light-weight
This technique is implemented in the regions
package which is
re-exported from safer-file-handles
.
See the safer-file-handles-examples
package for examples how
to use this package:
git clone https://github.com/basvandijk/safer-file-handles-examples
See the safer-file-handles-bytestring/text
package for
ByteString/Text
operations on regional file handles.
[Skip to Readme]
Downloads
- safer-file-handles-0.11.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.1, 0.2, 0.2.0.1, 0.3, 0.3.0.1, 0.4, 0.5, 0.6, 0.6.1, 0.7, 0.8, 0.9, 0.10, 0.10.0.1, 0.11 |
---|---|
Change log | NEWS |
Dependencies | base (>=4 && <4.5), base-unicode-symbols (>=0.1.1 && <0.3), explicit-iomodes (>=0.5 && <0.7), pathtype (>=0.0.1 && <0.6), regional-pointers (>=0.7 && <0.8), regions (>=0.11 && <0.12), transformers (>=0.2 && <0.3) [details] |
License | BSD-3-Clause |
Copyright | 2010-2011 Bas van Dijk |
Author | Bas van Dijk |
Maintainer | Bas van Dijk <v.dijk.bas@gmail.com> |
Category | System, Monadic Regions |
Home page | https://github.com/basvandijk/safer-file-handles/ |
Bug tracker | https://github.com/basvandijk/safer-file-handles/issues |
Source repo | head: git clone git://github.com/basvandijk/safer-file-handles.git |
Uploaded | by BasVanDijk at 2011-09-23T10:10:47Z |
Distributions | |
Reverse Dependencies | 4 direct, 0 indirect [details] |
Downloads | 10113 total (33 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs uploaded by user Build status unknown [no reports yet] |