summaryrefslogtreecommitdiff
path: root/src/runtime/haskell/PGF/Parse.hs
AgeCommit message (Collapse)Author
2014-01-24fix in the Haskell runtimekr.angelov
2013-11-12added Predef.SOFT_BIND. This special token allows zero or more spaces ↵kr.angelov
between ordinary tokens. It is also used in the English RGL to attach the commas to the previous word.
2013-11-05Eliminate mutual dependencies between the GF compiler and the PGF libraryhallgren
+ References to modules under src/compiler have been eliminated from the PGF library (under src/runtime/haskell). Only two functions had to be moved (from GF.Data.Utilities to PGF.Utilities) to make this possible, other apparent dependencies turned out to be vacuous. + In gf.cabal, the GF executable no longer directly depends on the PGF library source directory, but only on the exposed library modules. This means that there is less duplication in gf.cabal and that the 30 modules in the PGF library will no longer be compiled twice while building GF. To make this possible, additional PGF library modules have been exposed, even though they should probably be considered for internal use only. They could be collected in a PGF.Internal module, or marked as "unstable", to make this explicit. + Also, by using the -fwarn-unused-imports flag, ~220 redundant imports were found and removed, reducing the total number of imports by ~15%.
2013-09-27a major refactoring in the C and the Haskell runtimes. Note incompatible ↵kr.angelov
change in the PGF format!!! The following are the outcomes: - Predef.nonExist is fully supported by both the Haskell and the C runtimes - Predef.BIND is now an internal compiler defined token. For now it behaves just as usual for the Haskell runtime, i.e. it generates &+. However, the special treatment will let us to handle it properly in the C runtime. - This required a major change in the PGF format since both nonExist and BIND may appear inside 'pre' and this was not supported before.
2010-12-14now every parse state keeps reference only to the concrete and the abstract ↵krasimir
syntaxes but not to the whole PGF
2010-12-14optimization in the parser for large lexicons. Now, the parser is slightly ↵krasimir
slower for grammars with a small lexicon but 3-4 times faster for the English Resource Grammar used in combination with Oxford Advanced Learners Dictionary
2010-12-08fixed typos in the documentation for PGF.Parsekrasimir
2010-10-18added explicit depth parameter to the parsing API and the corresponding ↵krasimir
command in the shell
2010-08-09native representation for HOAS in PMCFG and incremental type checking of the ↵krasimir
parse forest
2010-07-15fix the algorithm for items cutting in the partial parserkrasimir
2010-07-07report type errors in the shell from command "p"krasimir
2010-07-01redesign the open-literals APIkrasimir
2010-06-30rename isLiteralFCat -> isPredefFId, fcat(String|Int|Float) -> ↵krasimir
fid(String|Int|Float)
2010-06-29introduce the type synonym Token=String in the PGF APIkrasimir
2010-06-22preliminary version of API for Open Literalskrasimir
2010-06-05Changing rec to rec_ in PGFjordi.saludes
To make glasgow extensions happy we had to rename 'rec' to 'rec_' in sources from PGF folder.
2010-05-19now every BracketedString also has reference to the source expression(s)krasimir
2010-05-19now the parser could return partial parse resultskrasimir
2010-05-17simple refactoring: use ActiveKey in PGF.Parse.getParseResult instead of ↵krasimir
plain pair of FId and LIndex
2010-04-30optimize/simplify the error reporting in the new APIkrasimir
2010-04-30first incarnation of the bracketed string APIkrasimir
2010-04-23fix parsing of literalskrasimir
2010-04-04in the shell, permit 3-letter lang codes as concrete syntax namesaarne
2010-01-27cleanup the code of the PGF interpreter and polish the binary serialization ↵krasimir
to match the preliminary specification
2010-01-17PGF is now real synchronous PMCFGkrasimir
2010-01-17now the linearization is completely based on PMCFGkrasimir
2010-01-12move the definitions of _B and _V to PGF.Macroskrasimir
2010-01-05store the label names in PMCFGkrasimir
2009-12-14remove the old parsing code and the -erasing=on flagkrasimir