gf: Grammatical Framework

[ compiler, library, natural-language-processing, program ] [ Propose Tags ]

GF, Grammatical Framework, is a programming language for multilingual grammar applications

[Skip to Readme]
Versions [faq] 3.1.6,,, 3.2, 3.2.9, 3.3, 3.3.3, 3.4, 3.5, 3.6, 3.7, 3.7.1, 3.8, 3.9, 3.10
Dependencies array, base (>=4.3 && <4.8), binary, bytestring, cgi, containers, data-binary-ieee754, directory, filepath, fst, gf, haskeline, httpd-shed (>=, json, lifted-base, mtl, network (>=2.3 && <2.6), old-locale, parallel (>=3), pretty, process, random, time (<1.5), time-compat, unix, utf8-string, Win32 [details]
License LicenseRef-OtherLicense
Maintainer Thomas Hallgren
Revised Revision 2 made by ThomasHallgren at Fri Feb 20 14:25:57 UTC 2015
Category Natural Language Processing, Compiler
Home page
Bug tracker
Source repo head: darcs get
Uploaded by ThomasHallgren at Mon Jun 23 13:47:12 UTC 2014
Distributions NixOS:3.10
Executables pgf-shell, gf
Downloads 6773 total (189 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Successful builds reported [all 1 reports]





Enable Ctrl+Break in the shell


Include --server mode


Use a customised version of the binary package


Include functionality from the C run-time library (which must be installed already)


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees

Readme for gf-3.6

[back to package description]

The Grammatical Framework (=GF) 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 of source distribution:
See download/index.html for installation instructions.
(More details can be found in doc/gf-developers.html.)