mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-09 04:59:31 -06:00
db9aeb2fa28541b5793eb5b8fdd49a0dad8f6d47
loadConcr, unloadConcr and addLiteral modify the Concr structure as a side effect. This means that other functions with a Concr argument (e.g. parse and linearize) are no longer pure. Possible solutions: 1. Don't try to hide the imperative nature of the C run-time system: remove all uses of unsafePerformIO and let all functions operate in the IO monad. 2. Don't export functions with side effects. Perhaps the desired functionality of loadConcr, unloadConcr and addLiteral can be folded into readPGF. The Concr structures can then treaded as immutable after after the readPGF function returns...
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.)
Description
Languages
Haskell
45%
C
32.9%
JavaScript
10.1%
HTML
3.3%
Grammatical Framework
2.8%
Other
5.8%