summaryrefslogtreecommitdiff
path: root/src/runtime/c/pgf/parser.c
AgeCommit message (Collapse)Author
2015-02-26bugfix in the parser which caused some items to be poped in the wrong order ↵krasimir
if their probability differ with less that 0.5
2015-02-24remove three more uses of meta productions that were left in debugging modekrasimir
2015-02-19parsing with meta rules is now removed since we don't use them anymore and I ↵krasimir
would gladly remove some code.
2015-02-18fix in the parser for callbacks in the middle of a wordkrasimir
2014-12-16change in the API for literalskr.angelov
The API in the C runtime as well as in the Haskell, Python and Java binding is changed. Now instead of adding the literal callbacks to the concrete syntax you need to supply them every time when you need to parse. The main reason is: - referentially transparent API for Haskell - when we start using memory mapped files we will not be allowed to change anything in the grammar data structures. At that point the old API would be impossible to use.
2014-12-01fix the last patchkr.angelov
2014-12-01a small optimization in the PGF parser which gives me ~5% speed upkr.angelov
2014-11-27remove pgf/parser.hkr.angelov
2014-11-26fix the handling of the heuristic factor. it was broken when I added the ↵kr.angelov
BIND token which means that the App grammar was running about 2-3 times slower.
2014-10-23a simple optimization in cmp_item_prob with great effect on the parser's speedkr.angelov
2014-10-09Prelude.CAPIT is now a built-in primitive. It still generates &| in the ↵kr.angelov
Haskell runtime but will be intepreted in the C runtime
2014-10-09throw away the long obsolete runtime type information in the C runtimekr.angelov
2014-10-09replace the hash maps in the abstract syntax with binary search tableskr.angelov
2014-04-22bugfix in the handling of BIND in the C runtimekr.angelov
2014-04-17now word completion from Java works. It could be made betterkr.angelov
2014-04-10now fully functional Java API for custom literalskr.angelov
2014-04-08bugfix in the C runtime that shows up with only some grammarskr.angelov
2014-03-25small fixes in the C runtimekr.angelov
2014-03-18whitespace cleanup in the parserkr.angelov
2014-03-12compute the right word probabilitykr.angelov
2014-03-07added pgf_lookup_word_prefix which makes it possible to do simple word ↵kr.angelov
prediction
2013-12-10loading and unloading of languages in the C runtime and in the Python bindingskr.angelov
2013-11-22bugfix in the debug mode for the parserkr.angelov
2013-11-21bugfix in the C runtimekr.angelov
2013-11-18bugfix in the robust parserkr.angelov
2013-11-13bugfix in the C runtime which had made the parser up to 200 times slower for ↵kr.angelov
some sentences
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-07factor of 3 speedup for the translation without slowing down the grammar ↵kr.angelov
loading. The parser still seems to be 8 times slower than before I introduced the BIND. At least the Android UI now feels a lot more comfortable
2013-11-06fix in the parsing with prekr.angelov
2013-11-06the content of ParseEngAbs3.probs is now merged with ParseEngAbs.probs. The ↵kr.angelov
later is now retrained. Once the grammar is compiled with the .probs file now it doesn't need anything more to do robust parsing. The robustness itself is controlled by the flags 'heuristic_search_factor', 'meta_prob' and 'meta_token_prob' in ParseEngAbs.gf
2013-11-01fix the robust parser for unknown tokenskr.angelov
2013-10-30use linref in the C linearizer. The robust linearization is now fully supportedkr.angelov
2013-10-30added the linref construction in GF. The PGF version number is now bumpedkr.angelov
2013-10-28another fix for 'pre'kr.angelov
2013-10-28fix the handling of 'pre' in the C runtimekr.angelov
2013-10-21bugfix for the custom literals in the C runtimekr.angelov
2013-10-09avoid warning in parser.c when debugging is OFFkr.angelov
2013-10-09a major redesign in the C runtime. The parser and the linearizer now fully ↵kr.angelov
support BIND. The following things are still broken: parseval, word completion, handling 'pre', the robust mode
2013-10-08fix the robust parser after the change of GuStringkr.angelov
2013-10-04GuString is now an ordinary C string - it makes live easier. In addition ↵kr.angelov
PgfSymbolKS, PgfExprFun and PgfLiteralStr now keep their strings as embedded flexible arrays. The latest change gives us the same compactness as the old representation but it is a lot easier to use.
2013-09-30better handling for nonExist in the C runtime. BIND is also supported in the ↵kr.angelov
linearizer but not in the parser yet
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-25fix the debug mode of the parser after the refactoring in libgukr.angelov
2013-09-17a major refactoring in the C runtime. GuList is now removed and replaced ↵kr.angelov
with GuSeq. The GuSeq/GuBuf API is simplified
2013-09-13remove leftcorner_cat_idx which is now redundantkr.angelov
2013-09-13minor optimization/refactoring in the grammar readerkr.angelov
2013-09-13the leftcorner indexing is now completely removed since it slowed down the ↵kr.angelov
loading without speeding up parsing a lot
2013-09-13fix the debug mode of the parser after the changes in the libgu APIkr.angelov
2013-09-12remove the logging from libgukr.angelov
2013-09-05remove the read and write modules from libgu. this simplifies the i/o layerkr.angelov