mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-09 04:59:31 -06:00
GF.Compile.Compute.ConcreteNew + two new modules contain a new
partial evaluator intended to solve some performance problems with the old
partial evalutator in GF.Compile.Compute.ConcreteLazy. It has been around for
a while, but is now complete enough to compile the RGL and the Phrasebook.
The old partial evaluator is still used by default. The new one can be activated
in two ways:
- by using the command line option -new-comp when invoking GF.
- by using cabal configure -fnew-comp to make -new-comp the default. In this
case you can also use the command line option -old-comp to revert to the old
partial evaluator.
In the GF shell, the cc command uses the old evaluator regardless of -new-comp
for now, but you can use "cc -new ..." to invoke the new evaluator.
With -new-comp, computations happen in GF.Compile.GeneratePMCFG instead of
GF.Compile.Optimize. This is implemented by testing the flag optNewComp in
both modules, to omit calls to the old partial evaluator from GF.Compile.Optimize
and add calls to the new partial evaluator in GF.Compile.GeneratePMCFG.
This also means that -new-comp effectively implies -noexpand.
In GF.Compile.CheckGrammar, there is a check that restricted inheritance is used
correctly. However, when -noexpand is used, this check causes unexpected errors,
so it has been converted to generate warnings, for now.
-new-comp no longer enables the new type checker in
GF.Compile.Typeckeck.ConcreteNew.
The GF version number has been bumped to 3.3.10-darcs
228 lines
5.1 KiB
Plaintext
228 lines
5.1 KiB
Plaintext
name: gf
|
|
version: 3.3.10-darcs
|
|
|
|
cabal-version: >= 1.8
|
|
build-type: Custom
|
|
license: OtherLicense
|
|
license-file: LICENSE
|
|
category: Natural Language Processing, Compiler
|
|
synopsis: Grammatical Framework
|
|
description: GF, Grammatical Framework, is a programming language for multilingual grammar applications
|
|
homepage: http://www.grammaticalframework.org/
|
|
bug-reports: http://code.google.com/p/grammatical-framework/issues/list
|
|
tested-with: GHC==6.12.3, GHC==7.0.4, GHC==7.4.2
|
|
|
|
data-dir: src
|
|
data-files: www/*.html
|
|
www/P/*.png
|
|
www/gfse/*.html
|
|
www/gfse/*.css
|
|
www/gfse/*.js
|
|
www/gfse/P/*.png
|
|
www/gfse/P/*.jpg
|
|
www/minibar/*.html
|
|
www/minibar/*.css
|
|
www/minibar/*.js
|
|
www/minibar/*.png
|
|
www/TransQuiz/*.html
|
|
www/TransQuiz/*.css
|
|
www/TransQuiz/*.js
|
|
www/TransQuiz/*.png
|
|
www/translator/*.html
|
|
www/translator/*.css
|
|
www/translator/*.js
|
|
|
|
source-repository head
|
|
type: darcs
|
|
location: http://www.grammaticalframework.org/
|
|
|
|
|
|
flag interrupt
|
|
Description: Enable Ctrl+Break in the shell
|
|
Default: True
|
|
|
|
flag server
|
|
Description: Include --server mode
|
|
Default: True
|
|
|
|
flag new-comp
|
|
Description: Make -new-comp the default
|
|
Default: False
|
|
|
|
library
|
|
build-depends: base >= 4.2 && <5,
|
|
array,
|
|
fst,
|
|
containers,
|
|
bytestring,
|
|
random,
|
|
pretty,
|
|
mtl
|
|
hs-source-dirs: src/compiler src/runtime/haskell
|
|
extensions:
|
|
exposed-modules:
|
|
PGF
|
|
other-modules:
|
|
PGF.CId
|
|
PGF.Data
|
|
PGF.Macros
|
|
PGF.Generate
|
|
PGF.Linearize
|
|
PGF.Parse
|
|
PGF.SortTop
|
|
PGF.Expr
|
|
PGF.Type
|
|
PGF.Tree
|
|
PGF.Tokenizer
|
|
PGF.Paraphrase
|
|
PGF.TypeCheck
|
|
PGF.Binary
|
|
PGF.Morphology
|
|
PGF.VisualizeTree
|
|
PGF.Printer
|
|
PGF.Probabilistic
|
|
PGF.Forest
|
|
PGF.Optimize
|
|
PGF.Signature
|
|
GF.Data.TrieMap
|
|
GF.Data.Utilities
|
|
GF.Data.SortedList
|
|
GF.Data.ErrM
|
|
GF.Data.Relation
|
|
GF.Data.Operations
|
|
-- not really part of GF but I have changed the original binary library
|
|
-- and we have to keep the copy for now.
|
|
Data.Binary
|
|
Data.Binary.Put
|
|
Data.Binary.Get
|
|
Data.Binary.Builder
|
|
Data.Binary.IEEE754
|
|
|
|
executable gf
|
|
build-depends: base >= 4.2 && <5,
|
|
array,
|
|
containers,
|
|
bytestring,
|
|
filepath,
|
|
fst,
|
|
directory,
|
|
random,
|
|
old-time,
|
|
process,
|
|
pretty,
|
|
mtl,
|
|
haskeline,
|
|
parallel>=3
|
|
ghc-options: -threaded
|
|
if flag(server)
|
|
build-depends: httpd-shed, network, utf8-string, json, cgi
|
|
-- ,silently
|
|
cpp-options: -DSERVER_MODE
|
|
other-modules: GFServer
|
|
hs-source-dirs: src/server src/server/transfer src/example-based
|
|
|
|
if flag(new-comp)
|
|
cpp-options: -DNEW_COMP
|
|
|
|
build-tools: happy
|
|
--, alex>=2 && <3 -- tricky to install in Ubuntu 12.04
|
|
if os(windows)
|
|
build-depends: Win32
|
|
else
|
|
build-depends: unix
|
|
|
|
ghc-prof-options: -auto-all
|
|
|
|
if impl(ghc>=7.0)
|
|
ghc-options: -rtsopts
|
|
hs-source-dirs: src/compiler src/runtime/haskell
|
|
extensions:
|
|
main-is: GF.hs
|
|
other-modules:
|
|
GF.Data.BacktrackM
|
|
GF.Data.TrieMap
|
|
GF.Data.Utilities
|
|
GF.Data.SortedList
|
|
GF.Data.ErrM
|
|
GF.Data.Operations
|
|
GF.Data.Str
|
|
GF.JavaScript.AbsJS
|
|
GF.JavaScript.PrintJS
|
|
GF.Infra.Ident
|
|
GF.Infra.GetOpt
|
|
GF.Infra.Option
|
|
GF.Infra.UseIO
|
|
GF.Infra.CheckM
|
|
GF.System.Catch
|
|
GF.System.Console
|
|
GF.System.Signal
|
|
GF.Command.Commands
|
|
GF.Command.Interpreter
|
|
GF.Command.Abstract
|
|
GF.Command.Parse
|
|
GF.Command.Importing
|
|
GF.Grammar
|
|
GF.Grammar.Lexer
|
|
GF.Grammar.Parser
|
|
GF.Grammar.Grammar
|
|
GF.Grammar.Values
|
|
GF.Grammar.Macros
|
|
GF.Grammar.Lockfield
|
|
GF.Grammar.MMacros
|
|
GF.Grammar.Lookup
|
|
GF.Grammar.Unify
|
|
GF.Grammar.PatternMatch
|
|
GF.Grammar.Printer
|
|
GF.Grammar.ShowTerm
|
|
GF.Grammar.Binary
|
|
GF.Compile.Update
|
|
GF.Compile.CheckGrammar
|
|
GF.Compile.Refresh
|
|
GF.Compile.Rename
|
|
GF.Compile.ReadFiles
|
|
GF.Compile.GrammarToPGF
|
|
GF.Compile.ToAPI
|
|
GF.Compile.TypeCheck.Abstract
|
|
GF.Compile.TypeCheck.Concrete
|
|
GF.Compile.TypeCheck.ConcreteNew
|
|
GF.Compile.TypeCheck.TC
|
|
GF.Compile.Compute.Abstract
|
|
GF.Compile.Compute.Concrete
|
|
GF.Compile.Compute.ConcreteNew1
|
|
GF.Compile.Compute.ConcreteNew
|
|
GF.Compile.Compute.AppPredefined
|
|
GF.Compile.Compute.Value
|
|
GF.Compile.Compute.Predef
|
|
GF.Compile.Optimize
|
|
GF.Compile.SubExOpt
|
|
GF.Compile.GetGrammar
|
|
GF.Compile.PGFtoHaskell
|
|
GF.Compile.PGFtoProlog
|
|
GF.Compile.PGFtoJS
|
|
GF.Compile
|
|
GF.Index
|
|
GF.Quiz
|
|
PGF
|
|
PGF.CId
|
|
PGF.Data
|
|
PGF.Expr
|
|
PGF.Type
|
|
PGF.Tree
|
|
PGF.Macros
|
|
PGF.Generate
|
|
PGF.Linearize
|
|
PGF.Binary
|
|
PGF.Paraphrase
|
|
PGF.TypeCheck
|
|
PGF.Binary
|
|
PGF.Printer
|
|
PGF.Optimize
|
|
GFC
|
|
GFI
|
|
|
|
if flag(interrupt)
|
|
cpp-options: -DUSE_INTERRUPT
|
|
other-modules: GF.System.UseSignal
|
|
else
|
|
other-modules: GF.System.NoSignal
|