This repository has been deprecated and can now be found at https://github.com/seL4/capdl.
This tool is intended to be used with capDL textual specifications. In particular, it can parse input files into a variety of different output formats, including Isabelle theory files and C source files that can be given to the capDL initialiser.
For usage instructions run 'make' and then './parse-capDL'.
For details of the Capability Distribution Language, see the specification in the 'doc/' directory. Run 'make' in that directory to generate 'capDL.pdf'.
- 'CapDL': Haskell source code of the tool
- '*.cdl': Toy examples used as test files
- '*.right': Canonical representations of the examples used in testing
- 'doc': Latex source of the capDL Specification
Cabal should automatically retrieve all necessary Haskell dependencies to
build this tool, but if you need exact dependency information it is available
in capDL-tool.cabal
.
You can install cabal package dependencies either in a sandbox in the build directory or in the current user's home.
To install cabal dependencies in a sandbox run
make sandbox
To install cabal dependencies in the user's home run
make userdeps
The Capability Distribution Language is also documented in
Ihor Kuz, Gerwin Klein, Corey Lewis and Adam Christopher Walker "capDL: A language for describing capability-based systems" Proceedings of the 1st Asia-Pacific Workshop on Systems (APSys), pp. 31–36, New Delhi, India, August, 2010
The files in this repository are released under standard open source licenses.
Please see individual file headers and the LICENSE_BSD2
.txt file for details.