1
0
forked from GitHub/gf-core
Commit Graph

238 Commits

Author SHA1 Message Date
kr.angelov
9fd8d5d019 bugfix in the gate evaluate_value_lambda 2014-09-30 08:42:06 +00:00
kr.angelov
698329f469 bugfix in the pattern matching compiler and a number of other fixes that I somehow did not push before 2014-09-29 15:00:04 +00:00
kr.angelov
0d08417efe bugfix in the RET instruction 2014-09-29 13:04:49 +00:00
kr.angelov
1d7e976560 enlarge the code window in pgf_jit_gates to ensure enough space on 64-bit machines 2014-09-29 07:34:32 +00:00
kr.angelov
3064fc737e switch off the debugging of the JIT compiler which I had turned on accidentally. silence two harmless warnings 2014-09-25 11:44:45 +00:00
kr.angelov
25e8e4ce5a now a complete JIT compiler and ByteCode compiler for the def rules in the abstract syntax. there might be some bugs yet to be found, meta variables and computation under lambda is only partially supported 2014-09-25 10:35:06 +00:00
kr.angelov
e308f384de dummy jit_base_tail_finishr for x86_64. 2014-09-16 12:29:35 +00:00
kr.angelov
923ad6b3c0 a major revision of the bytecode generator and JIT compiler. the effect is that now we can compute with lambda functions and with true tail recursion 2014-09-11 15:39:39 +00:00
kr.angelov
d7dc541f74 the code for def rules now uses proper graph update to preserve lazyness 2014-09-05 11:53:02 +00:00
kr.angelov
5e5ad8f2db full support for recursive def rules in the C runtime 2014-09-05 10:09:43 +00:00
kr.angelov
442dadf100 partial implementation for recursive def rules 2014-09-01 14:51:20 +00:00
kr.angelov
9adf01a91e bug fixes in the JIT compiler 2014-09-01 12:53:14 +00:00
kr.angelov
9bc507f1d6 added evaluator.h which I had forgoten 2014-08-29 08:36:53 +00:00
kr.angelov
912225a5dd pattern matching in def rules is now supported 2014-08-11 15:53:41 +00:00
kr.angelov
03b067782c 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
0138869499 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
b3397f8071 bugfix for the typechecker in the C runtime 2014-07-08 19:19:48 +00:00
kr.angelov
7afbff6fa8 embedded mode for GF grammar in Python. Only generation for now 2014-07-06 19:49:17 +00:00
kr.angelov
b21f2c04e1 an initial Java/C API for predicting literals. Still not utilized 2014-04-25 08:53:18 +00:00
kr.angelov
68c8d3cba8 bugfix in the handling of BIND in the C runtime 2014-04-22 13:53:18 +00:00
kr.angelov
d8e5206e7f now word completion from Java works. It could be made better 2014-04-17 11:00:27 +00:00
kr.angelov
a9ebeaea44 now fully functional Java API for custom literals 2014-04-10 14:14:31 +00:00
kr.angelov
3a0aa8b997 bugfix in the C runtime 2014-04-10 07:42:49 +00:00
kr.angelov
66d60ce9d1 a quick hack to enable the NERC from bindings. This should be made available from the API but for now I just hacked the C runtime 2014-04-10 07:27:07 +00:00
kr.angelov
52377b46cf bugfix in the C runtime that shows up with only some grammars 2014-04-08 12:41:41 +00:00
kr.angelov
709f5dfcd8 small fixes in the C runtime 2014-03-25 13:57:57 +00:00
kr.angelov
bc81d163fb whitespace cleanup in the parser 2014-03-18 10:19:35 +00:00
kr.angelov
1a1e7cdb2e compute the right word probability 2014-03-12 15:36:40 +00:00
kr.angelov
a77dc568bb added pgf_lookup_word_prefix which makes it possible to do simple word prediction 2014-03-07 21:24:20 +00:00
hallgren
8d9821a977 C run-time: protect from Windows specific #includes with #ifdef __MINGW32__ 2014-03-06 13:42:27 +00:00
kr.angelov
487647b393 implementation for pre in the C runtime 2014-03-05 10:17:42 +00:00
kr.angelov
2e51ddceae memory leak in parseval.c 2014-03-04 10:29:18 +00:00
kr.angelov
903abb5a4f rename pgf_lzr_linearize_table to pgf_lzr_get_table 2014-03-04 10:13:23 +00:00
kr.angelov
ab8dd16e8d include malloc.h in a few places to avoid warnings on Windows 2014-02-27 19:34:14 +00:00
kr.angelov
7c66e438e1 GuVariant is now plain uintptr_t instead of a structure to make it easier to write Haskell bindings 2014-02-09 19:07:15 +00:00
kr.angelov
4b8c1db6d2 bugfix in the recognizer for literals in the C runtime 2014-02-05 20:13:52 +00:00
kr.angelov
ac835fe3b0 make sure that pgf_concrete_load has no effect on grammars that are completely loaded 2013-12-17 13:57:16 +00:00
kr.angelov
6028a63b42 loading and unloading of languages in the C runtime and in the Python bindings 2013-12-10 15:00:52 +00:00
kr.angelov
3509a8d4cc 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
4254b101f4 the GF syntax for identifiers is exteded with quoted forms, i.e. you could write for instance 'ab.c' and then everything between the quites is identifier. This includes Unicode characters and non-ASCII symbols. This is useful for automatically generated GF grammars. 2013-11-22 13:30:18 +00:00
kr.angelov
cddc19a5ad bugfix in the debug mode for the parser 2013-11-22 12:26:49 +00:00
kr.angelov
e77c19c783 bugfix in the C runtime 2013-11-21 14:31:28 +00:00
kr.angelov
b255f19b63 fix in the Python binding 2013-11-20 09:54:37 +00:00
kr.angelov
33a76f1cd5 bugfix in the robust parser 2013-11-18 09:05:27 +00:00
kr.angelov
fb8de0e8ea fixes in the C runtime to avoid warnings when compiling on MacOS 2013-11-15 10:03:22 +00:00
kr.angelov
684a3b8df5 pgf_read should open the grammar file in binary mode to prevent the Windows runtime from messing up the content. 2013-11-15 09:04:00 +00:00
kr.angelov
254aba33a1 pgf_reader_done should do nothing if the reading has failed 2013-11-15 08:59:18 +00:00
kr.angelov
63a90f34af bugfix in the C runtime which had made the parser up to 200 times slower for some sentences 2013-11-13 15:15:28 +00:00
kr.angelov
1d7b6f44b6 added Predef.SOFT_BIND. This special token allows zero or more spaces between ordinary tokens. It is also used in the English RGL to attach the commas to the previous word. 2013-11-12 09:54:57 +00:00
kr.angelov
6729cca568 factor of 3 speedup for the translation without slowing down the grammar 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-07 11:14:32 +00:00