1
0
forked from GitHub/gf-core
Commit Graph

18 Commits

Author SHA1 Message Date
krasimir
6eb15eb585 fix the NERC in C to work for PN as literal 2015-05-07 15:16:55 +00:00
kr.angelov
9b7e18c25e 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
80cf34bfd1 remove pgf/parser.h 2014-11-27 11:12:14 +00:00
kr.angelov
57f7b61c6b throw away the long obsolete runtime type information in the C runtime 2014-10-09 13:44:26 +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
a9ebeaea44 now fully functional Java API for custom literals 2014-04-10 14:14:31 +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
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
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
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
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
kr.angelov
83ca6c4f9f remove the read and write modules from libgu. this simplifies the i/o layer 2013-09-05 11:20:39 +00:00
kr.angelov
561e478ed4 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
a50c7c24b8 use size_t consistently as the type for constituent indices in the C runtime 2012-11-12 12:51:27 +00:00
kr.angelov
4aca965109 a new unbiased statistical parser. it is still far from perfect use it on your own risk. 2012-05-08 12:13:28 +00:00
kr.angelov
ed6a53609b yet another fix for parsing literals 2012-04-18 15:50:55 +00:00
kr.angelov
c6c54f8815 some fixes in the robust parser and a new API for literals 2012-04-12 06:55:25 +00:00
kr.angelov
2bf3f22fac libpgf: a new implementation for literals which also allows custom literals. the same mechanism is now used for the metavariables 2012-03-12 14:25:51 +00:00