1
0
forked from GitHub/gf-core
Krasimir Angelov aa3a03e7af Merge pull request #179 from phantamanta44/majestic
majestic: predef evaluation + option..of construct
2025-04-06 17:25:16 +02:00
2024-04-15 11:23:57 +02:00
2023-02-23 10:30:31 +01:00
2021-08-12 09:56:34 +02:00
2018-11-29 10:46:33 +01:00
2023-09-11 21:45:32 +02:00
2022-08-17 10:33:54 +02:00
2025-03-20 17:38:14 +01:00
2022-03-05 12:25:46 +08:00
2022-03-05 12:25:46 +08:00

GF Logo

Grammatical Framework (GF)

Build majestic runtime

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

  1. First, you need to install the C Runtime.
cd src/runtime/c

Then follow the instructions in the README.md in that folder.

  1. When the C runtime is installed, you should set up the Haskell runtime
cd ../haskell
runghc Setup.hs configure 
runghc Setup.hs build
sudo runghc Setup.hs install

If the above commands fail because of missing dependencies, then you must install those first. Use something along the lines:

cabal v1-install random --global

the same applies for all other dependecies needed here or bellow.

If you use macOS, you might run into problems with installation under /usr/lib, and you should first specify the variable for the library path:

export DYLD_LIBRARY_PATH=/usr/local/lib

and then you run following commands:

runghc Setup.hs configure --prefix=/usr/local
runghc Setup.hs build
sudo DYLD_LIBRARY_PATH=/usr/local/lib runghc Setup.hs install
  1. Then you need to setup the compiler:
cd ../../compiler/           
runghc Setup.hs configure
runghc Setup.hs build
sudo DYLD_LIBRARY_PATH=/usr/local/lib runghc Setup.hs install

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:

  1. gf-core — the GF compiler, shell and runtimes
  2. gf-rgl — the resource grammar library

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.

Description
No description provided
Readme Multiple Licenses 138 MiB
Languages
Haskell 45%
C 32.9%
JavaScript 10.1%
HTML 3.3%
Grammatical Framework 2.8%
Other 5.8%