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
kr.angelov
fe41356a9d
fix for the memory allocation in the jitter which should work for Windows.
2013-11-07 08:47:35 +00:00
kr.angelov
6c71830c10
fix in the parsing with pre
2013-11-06 16:25:25 +00:00
kr.angelov
475f213c99
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
d094d671bd
when printing floating literals use %lg instead of %lf for better output
2013-11-06 09:46:29 +00:00
kr.angelov
d2186b71e3
fix the debug mode of the JIT compiler after the refactoring in libgu
2013-11-04 19:33:29 +00:00
kr.angelov
81ef6714db
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
5683367818
bug fix in the linearizer
2013-11-04 12:40:53 +00:00
kr.angelov
0cb3245e26
linearization for HOAS trees. It should word but we need a type checker in order to test it properly
2013-11-02 12:34:00 +00:00
kr.angelov
58b20a7e2e
fix the parseval metric after the redesign in the C runtime
2013-11-01 17:36:22 +00:00
kr.angelov
72e0c89abe
bugfix in the linearizer
2013-11-01 17:26:35 +00:00
kr.angelov
d7cd5ba195
fix the robust parser for unknown tokens
2013-11-01 13:05:17 +00:00
kr.angelov
ffa143f1d2
bugfix in linearizer.c
2013-11-01 11:02:12 +00:00
kr.angelov
b05f61e6c6
remove the include to mman.h in jit.c since it doesn't seem to be used
2013-11-01 07:46:24 +00:00
kr.angelov
8f565302cc
bracketedLinearize in Python is now using the linref
2013-10-31 09:04:07 +00:00
kr.angelov
8019d3a615
use linref in the C linearizer. The robust linearization is now fully supported
2013-10-30 21:43:52 +00:00
kr.angelov
68b40ff0a8
fix the debug mode in the linearizer after the refactoring in libgu
2013-10-30 21:06:55 +00:00
kr.angelov
43fb9b3b7a
added the linref construction in GF. The PGF version number is now bumped
2013-10-30 12:53:36 +00:00
kr.angelov
56893dbf54
another fix for 'pre'
2013-10-28 13:54:06 +00:00
kr.angelov
841880144d
fix the handling of 'pre' in the C runtime
2013-10-28 12:35:37 +00:00
kr.angelov
c98a9a3266
tabular linearization in the C and Java runtimes
2013-10-23 14:49:28 +00:00
kr.angelov
e3dc98dd0f
bugfix for the custom literals in the C runtime
2013-10-21 12:34:57 +00:00
kr.angelov
82544f74c0
avoid warning in parser.c when debugging is OFF
2013-10-09 13:41:02 +00:00
kr.angelov
b058fdd17d
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
adc952a61d
fix the robust parser after the change of GuString
2013-10-08 15:00:42 +00:00
kr.angelov
527ea8fc5c
bugfix in GNU lightning for ARM
2013-10-08 13:33:18 +00:00
kr.angelov
f6b708ecab
fix the grammar printer after the change of GuString in libgu
2013-10-07 09:46:35 +00:00
kr.angelov
747590b86d
suppress warning in graphviz.c
2013-10-04 12:56:45 +00:00
kr.angelov
2f78333e28
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
357ddfb5d3
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
cedf848b5d
fix the graphviz visualization after the introduction of nonExist and BIND
2013-09-30 10:38:28 +00:00
kr.angelov
c4f68adca9
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
efa4bc4d62
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
a6e0ef76f1
remove pgf/edsl.h from the C runtime
2013-09-26 11:59:35 +00:00
kr.angelov
65ea8814aa
fix the debug mode of the parser after the refactoring in libgu
2013-09-25 10:21:35 +00:00
kr.angelov
be8bf64eb2
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
aea67b8109
the PGF reader now releases strings that are not used after the loading
2013-09-18 08:26:11 +00:00
kr.angelov
f984bfeb24
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