libcspm alternatives and similar packages
Based on the "Concurrency" category.
Alternatively, view cspmchecker alternatives based on common mentions on social networks and blogs.
-
haxl
A Haskell library that simplifies access to remote data, such as databases or web-based services. -
streamly
High performance, concurrent functional programming abstractions -
chaselev-deque
A collection of different packages for CAS based data structures. -
unagi-chan
A haskell library implementing fast and scalable concurrent queues for x86, with a Chan-like API -
cspmchecker
The library FDR3 uses for parsing, type checking and evaluating machine CSP. -
lifted-async
Run lifted IO operations asynchronously and wait for their results -
threads-supervisor
Simple, IO-based Haskell library for Erlang-inspired thread supervisors -
concurrent-machines
Concurrency features for the Haskell machines package -
concurrent-supply
A fast globally unique variable supply with a pure API -
sirkel
Sirkel; a Chord DHT in haskell. Node failure, replication and batteries included! -
slave-thread
A principal solution to ghost threads and silent exceptions -
thread-supervisor
A simplified implementation of Erlang/OTP like supervisor for GHC thread -
token-bucket
Haskell rate limiter library using lazy token bucket algorithm -
timers
Simple package that implements timers. Both "one-shot" and "repeating" timers are implemented. -
split-channel
Control.Concurrent.Chan split into sending and receiving halves. -
unagi-bloomfilter
A fast, cache-efficient, concurrent bloom filter in Haskell
Access the most powerful time series database as a service
Do you think we are missing an alternative of libcspm or a related project?
README
libcspm
This library provides a FDR-compliant parser, type checker and (experimental) evaluator for machine CSP files.
There is also a program, cspmchecker
, that makes use of this library to
provide command line type checking.
Installation
The simplest method is to install via Hackage.
cabal install cspmchecker
will install cspmchecker and its dependencies.
Otherwise, if you obtain a source distribution then the following commands
will install libcspm
.
cabal configure
cabal build
cabal install
To install cspmchecker
, firstly install libcspm
as above, then change
directory to cspmchecker
and run the following commands.
cabal configure
cabal build
cabal install
This should make cspmchecker
available from your command line shell
(if not check that the location cabal
installs binaries to is on your
$PATH
).
Usage of cspmchecker
From a command line shell simply do cspmchecker file.csp
to type check
the files. Any error messages will be printed out. For example:
$ cspmchecker ucsexamples/chapter04/abp.csp
Checking ucsexamples/chapter04/abp.csp.....
ucsexamples/chapter04/abp.csp:80:36-39:
Couldn't match expected type Int.Int with actual type Int
In the expression: bit
In the expression: ack == bit
In the expression: (ack == bit)
Documentation of the type system is forthcoming.
Usage of libcspm
See http://hackage.haskell.org/package/libcspm for documentation.
Testing
To test libcspm
run the following commands.
cabal configure --enable-tests
cabal build
cabal test
Bug Reports
Please files bug reports at https://github.com/tomgr/libcspm/issues. Please provide a minimal example script that exhibits the error (if possible).