Vanda-Haskell is a toolkit that contains various proof-of-concept implementations of algorithms from natural language processing.
- you need to have
ghcandcabalinstalled - change to the project’s root directory
- (optionally) create a sandbox via
cabal sandbox init - install via
cabal install --enable-documentation
The installation provides the command line tool vanda and a Haskell library.
-
You can run the tool via
cabal exec -- vandafrom the project’s root directory. Alternatively you can locate the binary viacabal exec which vandaand run it directly or add the containing directory to yourPATH. -
Algorithms are called via git-style subcommands, e.g.,
cabal exec -- vanda brackets mdyck '[(,{' ']),}' '{([])[()]}'. -
Each subcommand has its own
helpsubcommand that provides further information, e.g.,cabal exec -- vanda brackets help. -
Running
vandawithout arguments shows you the following list of available top-level subcommands:vanda [COMMAND] ... Vanda Commands: brackets algorithms for Dyck and multiple Dyck languages cbsm Count-Based State Merging lcfrs algorithms for probabilistic LCFRS pmcfg algorithms for weighted parallel multiple context-free grammars ngrams algorithms for n-gram models pdta grammatical inference of probabilistic deterministic tree automata (experimental!) xrsngrams algorithms for combining n-gram models and translation models pcfg algorithms for extracting and training PCFGs Every mode provides a sub-mode help, which displays only help concerning this mode. Every help mode has an optional argument which defines the help format.
-
You need to have
stackinstalled. -
Change to the project’s root directory and
-
install via
stack build --copy-bins. -
You can run the tool via
stack exec -- vandafrom any directory. Alternatively you can locate the binary viastack exec which vandaand run it directly or add the containing directory to yourPATH.
Currently, the library just exposes nearly every module there is in the project. This includes the modules that implement the functionality of the command line tool. The API is not fixed, yet.
The modules are documented using haddock syntax.
While installation cabal collects the haddock documentation and API information to create easy-to-read HTML pages if the --enable- documentation flag is used or documentation: True is set in cabal’s configuration file.
The location of the documentation is output during the installation.