summaryrefslogtreecommitdiff
path: root/src/compiler/GF/Compile/GrammarToPGF.hs
AgeCommit message (Collapse)Author
2012-12-14The first prototype for exhaustive generation in the C runtime. The trees ↵kr.angelov
are always listed in decreasing probability order. There is also an API for generation from Python
2012-12-11partial evaluator workhallgren
* Evaluate operators once, not every time they are looked up * Remember the list of parameter values instead of recomputing it from the pattern type every time a table selection is made. * Quick fix for partial application of some predefined functions.
2012-12-02produce error message instead of failure of irrefutable pattern Ok ty_C in ↵aarne
GrammarToPGF, to help find compilation errors; the ones I've found are because an inherited abstract excludes something that the inherited concrete does not exclude.
2012-08-29A basic infrastructure for generating Teyjus bytecode from the GF abstract ↵kr.angelov
syntax
2012-01-14sorted the list of funs and cats in GrammatToPGF to get the predef ↵aarne
categories in proper place and get gr, ai, gt work properly
2011-11-24now if some module is compiled with -no-pmcfg then the PMCFG code is ↵kr.angelov
generated at the end during the linking phase. Now the default compilation of the libraries with cabal is with -no-pmcfg.
2011-11-14bugfix in the new PGF generationkr.angelov
2011-11-10Now PMCFG is compiled per module and at the end we only link it. The new ↵kr.angelov
compilation schema is few times faster.
2011-11-02merge GF.Infra.Modules and GF.Grammar.Grammar. This is a preparation for the ↵kr.angelov
separate PGF building
2011-11-02Now the compiler maintains more precise information for the source locations ↵kr.angelov
of the different definitions. There is a --tags option which generates a list of all identifiers with their source locations.
2011-08-30GF.Infra.Modules: keep the modules of a grammar in a finite map instead of a ↵hallgren
list This speeds up the compilation of PhrasebookFin.pgf by 12%, mosly by speeding up calls to lookupModule in calls from lookupParamValues, in calls from allParamValues. The invariant "modules are stored in dependency order" is no longer respected! But the type MGrammar is now abstract, making it easier to maintain this or other invariants in the future.
2011-08-30GrammarToPGF.hs: comment out unused importshallgren
2011-03-12make later flags take priority over earlier ones in PGF generation aarne
2010-11-12operations in the abstract syntaxkrasimir
2010-10-02refactor the API for random generation again. Now PGF contains probabilities ↵krasimir
in the abstract syntax
2010-07-01reorganize the modules in GF.Compile.*krasimir
2010-06-30compilation of pattern matching using the algorithm of Lennart Augustsson. ↵krasimir
Not used yet
2010-06-18Yay!! Direct generation of PMCFG from GF grammarkrasimir
2010-06-09dead code elimination for PGF. Note: the produced grammars will not work ↵krasimir
well with metavariables and high-order abstract syntax
2010-05-28refactoring in GF.Grammar.Grammarkrasimir
2010-03-24now for every category we store, in PGF, the list of functions for it in ↵krasimir
source-code order. The order matters for the termination of the exhaustive generation with dependent types.
2010-03-22store and propagate the exact source location for all judgements in the ↵krasimir
grammar. It may not be used accurately in the error messages yet
2010-03-18pattern @ should be propagated to PGFkrasimir
2010-03-18syntax for inaccessible patterns in GFkrasimir
2010-02-16no need to keep the list of constructors per category in .gfokrasimir
2010-02-05bugfix in GrammarToPGF related to the compilation of def ruleskrasimir
2010-01-31refactor GF.Infra.Modules for better error messageskrasimir
2010-01-29bugfix in the PGF typechecker and more test caseskrasimir
2010-01-27cleanup the code of the PGF interpreter and polish the binary serialization ↵krasimir
to match the preliminary specification
2010-01-26fix the PGF generation when it is used from the shellkrasimir
2010-01-17PGF is now real synchronous PMCFGkrasimir
2010-01-17now the linearization is completely based on PMCFGkrasimir
2010-01-17prettier parameter names in PGFkrasimir
2010-01-05printnames are now kept as String instead of Term in PGFkrasimir
2009-12-16one step deeper into records in PGF generationaarne
2009-12-14remove the old parsing code and the -erasing=on flagkrasimir
2009-12-14rename some modules that had GFCC in the name to PGF+somethingkrasimir