Commit Graph

223 Commits

Author SHA1 Message Date
kr.angelov
e408f0a0db clumsy fix for nonExist in pgf-translate 2013-10-21 12:35:34 +00:00
kr.angelov
53631576dc bugfix for the custom literals in the C runtime 2013-10-21 12:34:57 +00:00
kr.angelov
268e9a7960 avoid warning in parser.c when debugging is OFF 2013-10-09 13:41:02 +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
20e4970ec1 added gu_is_space in gu/utf8.h. this helps to avoid the dependency on the broken unicode library for C. 2013-10-09 08:37:42 +00:00
kr.angelov
ebb5737c0e fix the robust parser after the change of GuString 2013-10-08 15:00:42 +00:00
kr.angelov
4a50440db9 bugfix in GNU lightning for ARM 2013-10-08 13:33:18 +00:00
kr.angelov
c8df5997a7 fix the grammar printer after the change of GuString in libgu 2013-10-07 09:46:35 +00:00
kr.angelov
73fa1ec0e6 suppress warning in graphviz.c 2013-10-04 12:56:45 +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
71868fa053 the symbol for nonExist in the GF runtime should be the last. this simplifies the binary search in the C runtime 2013-10-03 08:21:31 +00:00
kr.angelov
f5d7b4787c fix the graphviz visualization after the introduction of nonExist and BIND 2013-09-30 10:38:28 +00:00
kr.angelov
13822c9a2d better handling for nonExist in the C runtime. BIND is also supported in the linearizer but not in the parser yet 2013-09-30 10:25:39 +00:00
kr.angelov
426bc49a52 a major refactoring in the C and the Haskell runtimes. Note incompatible 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-27 15:09:48 +00:00
kr.angelov
780ba65c25 remove pgf/edsl.h from the C runtime 2013-09-26 11:59:35 +00:00
kr.angelov
216490f275 add gu_variant_close in libgu 2013-09-26 10:41:52 +00:00
kr.angelov
2e2f74741a fix the debug mode of the parser after the refactoring in libgu 2013-09-25 10:21:35 +00:00
kr.angelov
4f05852b22 added assertion in the JIT compiler which checks that we are not going outside of the compilation window 2013-09-25 07:53:10 +00:00
kr.angelov
c08f42ce9f the PGF reader now releases strings that are not used after the loading 2013-09-18 08:26:11 +00:00
kr.angelov
a42cbb84ff add type signature for gu_string_length in the headers of libgu 2013-09-18 08:03:37 +00:00
kr.angelov
99985843d1 bugfix in the ordering of strings in libgu 2013-09-17 19:05:54 +00:00
kr.angelov
237c2af7fc gu_buf_binsearch -> gu_seq_binsearch. Improved API 2013-09-17 19:04:46 +00:00
kr.angelov
d1e6a9c2ba added order and equality for strings in libgu 2013-09-17 13:45:37 +00:00
kr.angelov
2a49e4e1d6 a major refactoring in the C runtime. GuList is now removed and replaced with GuSeq. The GuSeq/GuBuf API is simplified 2013-09-17 12:45:00 +00:00
kr.angelov
470eb46e96 remove leftcorner_cat_idx which is now redundant 2013-09-13 13:49:17 +00:00
kr.angelov
c721c5548e minor optimization/refactoring in the grammar reader 2013-09-13 11:02:17 +00:00
kr.angelov
df91908e63 the leftcorner indexing is now completely removed since it slowed down the loading without speeding up parsing a lot 2013-09-13 10:26:33 +00:00
kr.angelov
4eb9aa3911 fix the debug mode of the parser after the changes in the libgu API 2013-09-13 09:58:20 +00:00
kr.angelov
ba60e6f0e4 tiny optimization in pgf/reader 2013-09-13 09:50:44 +00:00
kr.angelov
9da5ca7f81 bugfix in utf8.c 2013-09-13 09:50:04 +00:00
kr.angelov
d10a3830b8 fix a warning in utf8.c 2013-09-13 08:30:57 +00:00
kr.angelov
2e8f055164 optimize the reading of strings in the grammar loader. 2013-09-13 08:28:20 +00:00
kr.angelov
4d8ed02f6d more UTF8 cleanup 2013-09-13 08:12:19 +00:00
kr.angelov
c469ae9091 clean up the UTF8 API in libgu 2013-09-13 07:44:45 +00:00
kr.angelov
9c3dd1e1e1 remove the logging from libgu 2013-09-12 09:30:02 +00:00
kr.angelov
2105188bd0 enable the PGF JIT compiler for Android 2013-09-12 09:05:43 +00:00
kr.angelov
bfafdbfec3 rewrite the ARM port of GNU lightning to a form compatible with the versions for the other CPUs 2013-09-11 20:17:50 +00:00
kr.angelov
14f8b96b56 remove the string internalization since it slows down grammar loading with little benefit 2013-09-05 13:34:49 +00:00
kr.angelov
ebc3fc51d0 fix gu_in_bytes_ to use buffering 2013-09-05 12:10:55 +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
504341dfba remove dump and yaml from libgu 2013-09-05 10:01:47 +00:00
kr.angelov
8f975239c6 bugfix for gu_buffered_in 2013-09-05 09:50:57 +00:00
kr.angelov
35a98594be added make file for compiling the C runtime for Android. The JIT compiler for Android is temporary disabled 2013-09-04 11:56:47 +00:00
kr.angelov
c837f3927e the code in the C runtime is now complete independent from config.h 2013-09-04 11:51:05 +00:00
kr.angelov
93cbfd31d1 remove the dependency on the CHAR_ASCII flag 2013-09-04 10:27:08 +00:00
kr.angelov
805f95eac6 remove the dependency on the HAVE_STATEMENT_EXPRESSIONS flag. This reduces the dependency on the ./configure script 2013-09-04 10:06:07 +00:00
kr.angelov
ae87c3d272 avoid using nan() in libgu for portability with Android 2013-09-04 07:36:39 +00:00
kr.angelov
0aef8d1c72 slight optimization for the linearizer in the C runtime 2013-09-04 07:11:14 +00:00
kr.angelov
69e71b6a4e bugfix in the robust linearizer 2013-09-04 07:05:27 +00:00
kr.angelov
69007cc661 bugfix which caused the runtime to crash on Android 2013-08-28 15:19:39 +00:00