summaryrefslogtreecommitdiff
path: root/src/runtime/haskell/PGF/Forest.hs
AgeCommit message (Collapse)Author
2020-10-02fix parsing with HOASkrangelov
2018-12-20save the original concrete category in BracketedStringKrasimir Angelov
2018-11-30Fix deprecations from containers >= 0.4.0.0Peter Ljunglöf
E.g. `foldWithKey` has been deprecated since 0.4.0.0 (November 2010)[1] and has been removed in 0.6.0.1 (2018)[2] [1]: https://github.com/haskell/containers/blob/master/changelog.md#0400--nov-2010 [2]: https://github.com/haskell/containers/blob/master/changelog.md#death-of-deprecated-functions (commit originally by @fredefox)
2015-08-28Comment out some dead code found with -fwarn-unused-bindshallgren
Also fixed some warnings and tightened some imports
2014-08-11a partial support for def rules in the C runtimekr.angelov
The def rules are now compiled to byte code by the compiler and then to native code by the JIT compiler in the runtime. Not all constructions are implemented yet. The partial implementation is now in the repository but it is not activated by default since this requires changes in the PGF format. I will enable it only after it is complete.
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-10-30linref is now used by the linearizer. The visible change is that the 'l' ↵kr.angelov
command in the shell now can linearize discontinuous phrases
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.
2013-09-03fix in the GF compiler and runtime which let us to define pre construct ↵kr.angelov
detecting whether this is the last token.
2012-08-29Use nub' instead of nub in some places, remove some unused nub importspeter.ljunglof
2012-08-29A basic infrastructure for generating Teyjus bytecode from the GF abstract ↵kr.angelov
syntax
2012-03-18PGF run-time library: function names in BracketedString (experimental)hallgren
+ Make room for function names in the BracketedString data structure. + Fill in function names when linearizing an abstract syntax tree to a BracketedString. + Fill in wildCId when it is not obvious what the function is. + Function bracketedLinearize: for compatibility with the other linearization functions, return Leaf "" instead of error "cannot linearize". + Export flattenBracketedString from module PGF. + PGFServce: make function names available in the JSON representation of BracketedString.
2011-12-19the parser now use nub instead of nubsort which means that the abstract ↵kr.angelov
syntax trees will be returned lazily
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-10-21change the TcM monad to continuation passing style. The old monad caused ↵krasimir
stack overflow for large search spaces
2010-10-21support for proof search with high-order functionskrasimir
2010-10-20fixed typo which broke the parsing with -openclasskrasimir
2010-10-18added explicit depth parameter to the parsing API and the corresponding ↵krasimir
command in the shell
2010-10-18now we use the GF reasoner to fillin meta variables in the abstract trees ↵krasimir
generated from the parser
2010-10-14now since the type checking monad TcM is nondeterministic we can use the ↵krasimir
same monad in PGF.Forest.getAbsTrees
2010-10-11the exhaustive/random generator now knows how to handle computable functions ↵krasimir
in the types
2010-10-02refactor the API for random generation again. Now PGF contains probabilities ↵krasimir
in the abstract syntax
2010-08-09native representation for HOAS in PMCFG and incremental type checking of the ↵krasimir
parse forest
2010-07-13fix the loopchecking in PGF.Forest.bracketedToknkrasimir
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-19added function lengthBracketedStringkrasimir
2010-05-19now the parser could return partial parse resultskrasimir
2010-05-01refactor BracketedStringkrasimir
2010-04-30first incarnation of the bracketed string APIkrasimir