kr.angelov
584d589041
a partial support for def rules in the C runtime
...
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.
2014-08-11 10:59:10 +00:00
kr.angelov
0222d2440c
implemented computing with abstract syntax trees. It passes all test cases except those that require def rules. The design is consistent with the STG virtual machine
2014-07-08 19:45:49 +00:00
kr.angelov
e52d5bf715
embedded mode for GF grammar in Python. Only generation for now
2014-07-06 19:49:17 +00:00
kr.angelov
d278965095
an initial Java/C API for predicting literals. Still not utilized
2014-04-25 08:53:18 +00:00
kr.angelov
1ca09448f9
now fully functional Java API for custom literals
2014-04-10 14:14:31 +00:00
kr.angelov
ba28cfd80e
added pgf_lookup_word_prefix which makes it possible to do simple word prediction
2014-03-07 21:24:20 +00:00
kr.angelov
b0a74ddc59
added API in the C runtime and the Java binding for checking whether a given function is linearizable in a given language. This is used in the Android UI for better vizualizations
2013-11-27 12:35:11 +00:00
kr.angelov
9a2725279e
fix in the Python binding
2013-11-20 09:54:37 +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
546c7ac859
A simple type checker in the C runtime. Dependent types are not supported yet but HOAS is implemented. The API is accessible from Python as well
2013-11-04 17:10:46 +00:00
kr.angelov
0882396875
tabular linearization in the C and Java runtimes
2013-10-23 14:49:28 +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
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
e9eeefa6f0
fullFormLexicon in C and Python
2013-08-19 12:16:30 +00:00
kr.angelov
87e34b11dc
implemented lookupMorpho for C and Python
2013-08-16 15:02:24 +00:00
kr.angelov
662a35bbb3
provide API to access the language code for the concrete language
2013-08-16 12:54:16 +00:00
kr.angelov
1e44fdb3d3
fixes in the C and Python API to make them closer to the Haskell API
2013-08-16 12:44: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
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
22f44ef61f
word completion in the C runtime. The runtime/python/test.py example is now using readline with word completion
2013-05-01 06:09:55 +00:00
kr.angelov
542dcaa0ec
the C runtime and the Python binding now have an API for parser evaluation. The API computes PARSEVAL and Exact Match for a given tree. As a side effect the abstract trees in Python are now compared for equality by value and not by reference
2013-04-19 10:57:46 +00:00
kr.angelov
6a36ce77ff
the class PgfConcr from the Python binding now has a property name which returns the name of the concrete syntax
2013-02-11 15:51:26 +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
gregoire.detrez
0aae4702ed
Python binding: add a parsing function that accepts directly a list of tokens.
...
Is allows to define a tokenizer in python (or use an existing one, from nltk for instance.)
2013-01-24 13:31:34 +00:00
kr.angelov
20aaa4a989
The first prototype for exhaustive generation in the C runtime. The trees are always listed in decreasing probability order. There is also an API for generation from Python
2012-12-14 15:32:49 +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
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
c9c5675e1d
now there is a limit of 2000000 items in the chart of the robust parser. This prevents from explosion in the memory size but it will also prevent us from parsing some sentences.
2012-06-12 11:30:01 +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
f4c17cb7aa
another attempt to port the robust parser to MacOS
2012-05-16 15:18:44 +00:00
kr.angelov
28bce1cdc0
added an API for printing the PGF to human readable format
2012-01-21 10:27:55 +00:00
kr.angelov
2eee382a62
initial import of the C runtime
2012-01-20 13:41:10 +00:00