Commit Graph

413 Commits

Author SHA1 Message Date
krasimir d22c07dcfb refine the GNU lightning patch to avoid generating unnecessary code 2015-07-16 15:29:14 +00:00
krasimir fac48d43e8 bugfixes in the JIT compiler for x86_64. One of the fixes is actually in GNU lightning 2015-07-16 15:21:09 +00:00
krasimir 192b1cc018 the reasoner's states are now closures just like the code for the def rules. This means more compact JIT compiled code and uniformity with the code for def rules 2015-07-04 15:06:34 +00:00
krasimir b3680b6025 merge the states for reasoning and evaluation into a single structure 2015-07-03 11:53:52 +00:00
krasimir 6f2afdd53e bugfix in the parser for lexical lookup 2015-06-30 12:54:19 +00:00
krasimir c7f1803410 bugfix in the bottom-up prediction for the parser 2015-06-25 09:46:43 +00:00
hallgren c6cdb66cf2 runtime/c/pf/jit.c: silence warning about alloca on MINGW32 2015-06-23 15:49:31 +00:00
krasimir e352742b8c the orthographic tokens were broken when they appear inside a dictionary entry. Now this is fixed by treating those as syntactic rules 2015-06-12 13:03:19 +00:00
krasimir 9b0edaacdb print error message for missing abstract categories in the C runtime 2015-06-05 07:41:59 +00:00
krasimir 786da46a99 added callback in C for unknown words 2015-05-19 09:15:48 +00:00
krasimir 616a24cba4 the NERC in C is now fully up-to-date with the other NERCs. In addition the NERC in Haskell and Java now refuses to recognize names that match words in the lexicon. The latest is useful for German 2015-05-19 07:26:56 +00:00
krasimir 09a57b34a8 bugfix in the NERC in C 2015-05-18 15:02:44 +00:00
krasimir ce05465365 the callbacks in C now take the concrete syntax as a parameter 2015-05-18 14:41:33 +00:00
krasimir 773a33979b pgf_lookup_morpho and pgf_lookup_word_prefix are now also case insensitive if case_sensitive=off 2015-05-18 14:20:35 +00:00
krasimir b4e41cabdd "flags case_sensitive=off" makes the parser case insensitive 2015-05-11 14:11:42 +00:00
krasimir 1e0d7be4f4 added all orthographic primitives 2015-05-11 13:01:39 +00:00
krasimir 13998e3287 implemented CAPIT in parsing 2015-05-08 18:54:50 +00:00
krasimir 483df35954 fix in the dictionary lookup 2015-05-08 18:12:24 +00:00
krasimir ea0f74d455 a new nice and elegant algorithm for dictionary lookup in the parser 2015-05-08 14:38:24 +00:00
krasimir 365c7bb1d8 the parser is now fully Unicode compatible 2015-05-08 09:23:29 +00:00
krasimir bf3b6f2794 fix the NERC in C to work for PN as literal 2015-05-07 15:16:55 +00:00
krasimir 5d7633fdb4 added getpagesize() definition for Windows 2015-04-20 09:57:28 +00:00
krasimir 8f0624bc30 remove the meta_item variable from the parse state 2015-03-06 15:18:50 +00:00
krasimir a5817ff492 fix some out-of-date code for the PGF_RESULT_DEBUG mode in the parser 2015-02-26 13:31:26 +00:00
krasimir 9c83b2e27d use the same trick for comparison of doubles in cmp_expr_state 2015-02-26 13:10:01 +00:00
krasimir 532647c978 bugfix in the parser which caused some items to be poped in the wrong order if their probability differ with less that 0.5 2015-02-26 12:17:59 +00:00
krasimir 715ac1ca62 remove three more uses of meta productions that were left in debugging mode 2015-02-24 10:59:18 +00:00
krasimir da11a7127f implemented escape characters when reading/printing an abstract expression with string literals 2015-02-24 09:35:12 +00:00
krasimir e893d41393 silence some warnings in GNU Lightning for i386_64 2015-02-19 12:53:52 +00:00
krasimir b92bbcfc37 parsing with meta rules is now removed since we don't use them anymore and I would gladly remove some code. 2015-02-19 11:59:51 +00:00
krasimir e3a87c657b fix in the parser for callbacks in the middle of a word 2015-02-18 16:14:29 +00:00
kr.angelov d361b7f5d2 fix in the JIT compiler that would hopefully make it work on iOS 2015-02-11 13:07:06 +00:00
kr.angelov 3bd40dbab6 API for word alignment in the C runtime and in the Haskell binding 2014-12-29 10:59:20 +00:00
kr.angelov f44f9a1b00 added mkStr to the Haskell binding 2014-12-19 08:58:02 +00:00
kr.angelov bb1c1dd27c added mkApp to the Haskell binding 2014-12-19 08:47:00 +00:00
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 64feca59c8 fix the last patch 2014-12-01 11:03:50 +00:00
kr.angelov 960ba43149 a small optimization in the PGF parser which gives me ~5% speed up 2014-12-01 10:48:15 +00:00
kr.angelov 14a2821fd8 fix in GNU lightning to enable the compilation of two of the the floating point operations. 2014-12-01 09:42:21 +00:00
kr.angelov 35e76a5fe8 fix in linearizer.h to make jpgf compilable 2014-12-01 09:41:48 +00:00
kr.angelov 6f2195f793 fix in linearizer.h which resolves a warning 2014-11-27 15:20:46 +00:00
kr.angelov f63e8faf00 remove pgf/parser.h 2014-11-27 11:12:14 +00:00
kr.angelov 41e217a641 fix the handling of the heuristic factor. it was broken when I added the BIND token which means that the App grammar was running about 2-3 times slower. 2014-11-26 15:56:36 +00:00
kr.angelov cabafd68a6 expand the JIT window for x64 2014-11-07 15:43:12 +00:00
kr.angelov 70c70fa791 a skeletal module for higher-order pattern unification in the C runtime 2014-10-31 19:57:56 +00:00
kr.angelov b1e6a21c56 now (+) in the abstract syntax works, i.e. it knows how to deal with partial sums 2014-10-31 14:16:11 +00:00
kr.angelov 9b0f354c7c a more efficient tail call by using the new TUCK instruction 2014-10-30 13:09:50 +00:00
kr.angelov efedec187c an explicit SAVE instruction 2014-10-26 11:40:12 +00:00
kr.angelov e169f225cf a simple optimization in cmp_item_prob with great effect on the parser's speed 2014-10-23 21:22:22 +00:00
kr.angelov fc6658c2e7 fix the debug mode in the reasoner 2014-10-23 08:15:12 +00:00