Commit Graph

56 Commits

Author SHA1 Message Date
kr.angelov
9bc5349e62 change in the API for literals
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-16 10:21:26 +00:00
kr.angelov
f63e8faf00 remove pgf/parser.h 2014-11-27 11:12:14 +00:00
kr.angelov
550c747941 fix memory leak in the pgf-parse tool 2014-10-24 08:42:32 +00:00
kr.angelov
86e9acc7a7 throw away the long obsolete runtime type information in the C runtime 2014-10-09 13:44:26 +00:00
kr.angelov
3e49a1cf73 remove the pgf-service util which is obsolete anyway 2014-10-09 11:28:56 +00:00
kr.angelov
1ca09448f9 now fully functional Java API for custom literals 2014-04-10 14:14:31 +00:00
kr.angelov
6cb693bdf5 bugfix in pgf-translate 2014-03-07 09:35:57 +00:00
kr.angelov
cbe17732a6 use pgf_linearize instead of pgf_lzr_linearize_simple in pgf-translate.c 2014-03-04 10:30:23 +00:00
kr.angelov
0ece8f19ab loading and unloading of languages in the C runtime and in the Python bindings 2013-12-10 15:00:52 +00:00
kr.angelov
2483dc7728 the content of ParseEngAbs3.probs is now merged with ParseEngAbs.probs. The 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-06 10:21:46 +00:00
kr.angelov
4e7781b606 remove the include of lexer.h from pgf-parse 2013-11-02 11:28:55 +00:00
kr.angelov
e408f0a0db clumsy fix for nonExist in pgf-translate 2013-10-21 12:35:34 +00:00
kr.angelov
8cf03bc5b6 a major redesign in the C runtime. The parser and the linearizer now fully support BIND. The following things are still broken: parseval, word completion, handling 'pre', the robust mode 2013-10-09 12:08:51 +00:00
kr.angelov
e8335806af GuString is now an ordinary C string - it makes live easier. In addition 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-10-04 12:04:39 +00:00
kr.angelov
780ba65c25 remove pgf/edsl.h from the C runtime 2013-09-26 11:59:35 +00:00
kr.angelov
9c3dd1e1e1 remove the logging from libgu 2013-09-12 09:30:02 +00:00
kr.angelov
7c0bad5092 remove the read and write modules from libgu. this simplifies the i/o layer 2013-09-05 11:20:39 +00:00
kr.angelov
fc7e77bf50 added graphvizParseTree in the C and Python runtimes 2013-08-15 15:10:28 +00:00
kr.angelov
5337b4bef7 graphvizAbstractTree in the C and Python runtimes 2013-08-15 08:06:37 +00:00
kr.angelov
155afdf9b7 a complete Python API for reading, printing and manipulation of abstract trees and types. This includes dependent types, high-order abstract syntax and implicit arguments 2013-06-27 09:39:15 +00:00
kr.angelov
3c2d1890d0 patch for adjustable heuristics from Python 2013-06-26 07:36:03 +00:00
kr.angelov
687b326ed0 bug fix in the management of memory pools in the statistical parser 2013-05-07 08:30:32 +00:00
kr.angelov
7ba27229b3 the statistical parser is now using two memory pools: one for parsing and one for the output trees. This means that the memory for parsing can be released as soon as the needed abstract trees are retrieved, while the trees themselves are retained in the separate output pool 2013-05-06 15:28:04 +00:00
kr.angelov
6481f448fc bug fix in pgf-translate which was hiding that there are more than one trees per sentence 2013-04-22 13:02:43 +00:00
kr.angelov
1f91928606 now the web service to the robust parser can to translations also 2013-04-05 12:22:52 +00:00
kr.angelov
d018502fca update the pgf-service tool from the C runtime after the changes in the API 2013-03-14 10:37:01 +00:00
kr.angelov
90c3304147 remove the pgf2yaml tool which was both broken and redundant. The declarations for generic programming from data.c are removed as well 2013-02-11 13:51:12 +00:00
kr.angelov
5e2474e346 This patch removes Gregoire's parse_tokens function in the python binding and adds another implementation which builds on the existing API for lexers in the C runtime. Now it is possible to write incremental Lexers in Python 2013-02-01 09:29:43 +00:00
kr.angelov
580e443a5e fix warnings in pgf-parse.c 2013-01-08 12:53:49 +00:00
peter.ljunglof
49022f5849 Made meta probs an optional argument instead of hard-coded in pgf-translate 2013-01-08 10:20:46 +00:00
peter.ljunglof
599b51830f New PGF utility: pgf-parse 2013-01-08 10:19:53 +00:00
kr.angelov
a28ccc965c rename linearize.{h/c} to linearizer.{h/c} which follows the convention used in parser.c and reasoner.c 2012-12-19 09:17:24 +00:00
kr.angelov
ff49d21d13 fixed accidental bug in pgf-parse.c 2012-12-18 15:42:04 +00:00
kr.angelov
f7a5eb0df1 bugfix in the lexer from the C runtime. the input sentence doesn't have to terminate with whitespace 2012-12-13 16:45:44 +00:00
kr.angelov
14e721dda9 a top-level API for parsing in the C runtime 2012-12-13 14:44:33 +00:00
kr.angelov
aa13090b66 started an official API to the C runtime 2012-12-12 11:25:58 +00:00
kr.angelov
e174f37940 added experimental script for chunking in the C runtime 2012-12-03 10:07:54 +00:00
kr.angelov
d185938952 a major refactoring in the robust parser: bottom-up filtering and garbage collection for the chart 2012-10-25 14:42:53 +00:00
kr.angelov
a307ed6c75 the C runtime now has a type prob_t which is used only for probability values 2012-09-18 09:18:48 +00:00
kr.angelov
b27a440ef3 now the robust parser is purely top-down and the meta rules compete on a fair basis with the grammar rules 2012-06-12 09:29:51 +00:00
kr.angelov
92488a6592 fixed memory leak in the pgf-translate tool 2012-05-25 07:28:18 +00:00
kr.angelov
5312ef23c6 added pgf-service.c in the robust parser' 2012-05-25 07:27:29 +00:00
kr.angelov
a6800fc0da a new unbiased statistical parser. it is still far from perfect use it on your own risk. 2012-05-08 12:13:28 +00:00
kr.angelov
230f309317 libpgf: a new implementation for literals which also allows custom literals. the same mechanism is now used for the metavariables 2012-03-12 14:25:51 +00:00
kr.angelov
1726995921 libpgf: added simple lexer 2012-03-09 09:14:44 +00:00
kr.angelov
a96da30489 libpgf: two APIs - one for finding all parse results and another for finding the best parse result 2012-03-07 11:00:17 +00:00
kr.angelov
0e90d1ba1f libpgf: now all concrete functions and categories are explicitly linked to their abstract counter parts 2012-03-05 12:59:31 +00:00
kr.angelov
4d1b0859d0 libpgf: preliminary version for the statistical ranking. we use naive statistical model with random weight for the meta variables. 2012-03-02 19:25:01 +00:00
kr.angelov
e31c883075 libpgf: the first prototype for the robust parser 2012-02-29 14:43:08 +00:00
kr.angelov
4ddf24429b libpgf: the time measurement in pgf-translate should be made after pgf_parse_result for more accurate timing 2012-02-28 13:14:24 +00:00