@hackage gf3.12
Grammatical Framework
Categories
License
LicenseRef-OtherLicense
Maintainer
John J. Camilleri <john@digitalgrammars.com>
Links
Versions
Installation
Tested Compilers
Dependencies (27)
- Win32 >=2.3.1.1 && <2.7
- array >=0.5.1 && <0.6
- base >=4.9.1 && <4.22
- bytestring >=0.10.8 && <0.12
- cgi >=3001.3.0.2 && <3001.6
- containers >=0.5.7 && <0.7 Show all…
Dependents (2)
@hackage/acme-everything, @hackage/toktok
Package Flags
interrupt
(on by default)
Enable Ctrl+Break in the shell
server
(on by default)
Include --server mode
network-uri
(on by default)
Get Network.URI from the network-uri package
c-runtime
(off by default)
Include functionality from the C run-time library (which must be installed already)
Grammatical Framework (GF)
The Grammatical Framework is a grammar formalism based on type theory. It consists of:
- a special-purpose programming language
- a compiler of the language
- a generic grammar processor
The compiler reads GF grammars from user-provided files, and the generic grammar processor performs various tasks with the grammars:
- generation
- parsing
- translation
- type checking
- computation
- paraphrasing
- random generation
- syntax editing
GF particularly addresses four aspects of grammars:
- multilinguality (parallel grammars for different languages)
- semantics (semantic conditions of well-formedness, semantic properties of expressions)
- grammar engineering (modularity, abstractions, libraries)
- embeddability in programs written in other languages (C, C++, Haskell, Java, JavaScript)
Compilation and installation
The simplest way of installing GF from source is with the command:
cabal install
or:
stack install
Note that if you are unlucky to have Cabal 3.0 or later, then it uses the so-called Nix style commands. Using those for GF development is a pain. Every time when you change something in the source code, Cabal will generate a new folder for GF to look for the GF libraries and the GF cloud. Either reinstall everything with every change in the compiler, or be sane and stop using cabal-install. Instead you can do:
runghc Setup.hs configure
runghc Setup.hs build
sudo runghc Setup.hs install
The script will install the GF dependencies globally. The only solution to the Nix madness that I found is radical:
"No person, no problem" (Нет человека – нет проблемы).
For more information, including links to precompiled binaries, see the download page.
About this repository
On 2018-07-25, the monolithic GF repository was split in two:
The former repository is now archived and no longer updated. The split was performed using this script and the output of that script is here.