kr.angelov
ada85ae44e
an API for visitor patterns on abstract syntax trees from Python. This makes the embedded grammars especially pleasing
2014-07-06 23:48:51 +00:00
kr.angelov
85672af858
small fix for the embedded mode in Python
2014-07-06 19:55:08 +00:00
kr.angelov
e52d5bf715
embedded mode for GF grammar in Python. Only generation for now
2014-07-06 19:49:17 +00:00
hallgren
65b064fe82
build-binary-dist.sh: updated to include the Python binding to the C run-time
...
There are also some changes in src/runtime/python/setyp.py to support this.
2014-06-18 16:09:46 +00:00
kr.angelov
333e537e72
small fix in tabularLinearize
2014-05-22 13:33:18 +00:00
kr.angelov
757db06ba0
added tabularLinearize in the python binding
2014-05-22 13:30:14 +00:00
kr.angelov
d816c34986
added hasLinearization method in the Python binding
2014-03-20 14:48:47 +00:00
kr.angelov
eb1aa24896
fix in the Python binding which was forgoten after a change in the C runtime
2014-03-20 14:48:02 +00:00
kr.angelov
ae1512c926
compute the right word probability
2014-03-12 15:36:40 +00:00
kr.angelov
0ece8f19ab
loading and unloading of languages in the C runtime and in the Python bindings
2013-12-10 15:00:52 +00:00
kr.angelov
9a2725279e
fix in the Python binding
2013-11-20 09:54:37 +00:00
kr.angelov
546c7ac859
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
050ebd469c
bracketedLinearize in Python is now using the linref
2013-10-31 09:04:07 +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
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
9303fe100f
fix the bracketed linearization in Python after the introduction of nonExist and BIND
2013-09-30 11:49:51 +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
4baae48178
a small fix in the python binding after the refactoring in the C runtime
2013-09-24 09:14:43 +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
john
7c98267193
Add INSTALL file for python bindings. Add note about libtool to INSTALL of c runtime
2013-08-23 13:06:58 +00:00
kr.angelov
8f58dcdf63
change the locale in the test script for the Python binding
2013-08-21 13:17:39 +00:00
kr.angelov
1f4b55735e
fix a crash in the python binding
2013-08-21 12:47:40 +00:00
kr.angelov
d1368c3519
word completion in the C runtime now returns multi-word expressions and the category for every expression
2013-08-19 15:34:19 +00:00
kr.angelov
e9eeefa6f0
fullFormLexicon in C and Python
2013-08-19 12:16:30 +00:00
kr.angelov
87e34b11dc
implemented lookupMorpho for C and Python
2013-08-16 15:02:24 +00:00
kr.angelov
662a35bbb3
provide API to access the language code for the concrete language
2013-08-16 12:54:16 +00:00
kr.angelov
1e44fdb3d3
fixes in the C and Python API to make them closer to the Haskell API
2013-08-16 12:44:37 +00:00
kr.angelov
fc7e77bf50
added graphvizParseTree in the C and Python runtimes
2013-08-15 15:10:28 +00:00
kr.angelov
5337b4bef7
graphvizAbstractTree in the C and Python runtimes
2013-08-15 08:06:37 +00:00
kr.angelov
d7e42f00c5
the hash function for pgf.Expr is now really added
2013-07-05 05:35:22 +00:00
kr.angelov
478b46be87
typos in the documentation for the Python binding
2013-06-27 10:11:49 +00:00
kr.angelov
155afdf9b7
a complete Python API for reading, printing and manipulation of abstract trees and types. This includes dependent types, high-order abstract syntax and implicit arguments
2013-06-27 09:39:15 +00:00
kr.angelov
f4f76e4638
dummy compute function in the Python binding
2013-06-26 10:36:42 +00:00
kr.angelov
3c2d1890d0
patch for adjustable heuristics from Python
2013-06-26 07:36:03 +00:00
kr.angelov
f8073ea1cd
fíx in the Python binding for compatibility with Python<2.7
2013-06-19 19:31:55 +00:00
kr.angelov
0ad4c9bf65
fix an issue in the Python binding related to the 32 vs 64 bit compatibility
2013-06-19 18:47:52 +00:00
kr.angelov
b0b4f57775
bugfix in the python binding
2013-06-14 07:02:53 +00:00
kr.angelov
54a0642bee
now the call Expr.unpack("? e1 e2") in Python returns a pair with None as the first element and a the list [e1,e2] as the second. This makes it easier to decompose partial abstract trees
2013-05-31 09:24:15 +00:00
kr.angelov
1ce5fa3663
improved error message in the Python binding
2013-05-31 09:13:16 +00:00
kr.angelov
739b10f2a8
a simple refactoring in the Python runtime
2013-05-29 11:02:18 +00:00
kr.angelov
43bffd3f7d
readPGF in the Python runtime now throws "No such file or directory" exception if the grammar is missing
2013-05-29 10:49:56 +00:00
kr.angelov
b7cbee7940
fix the encoding problem with unicode literals in the Python binding
2013-05-21 10:53:20 +00:00
kr.angelov
517b8ff1ee
bugfix for bracketedLinearize which was causing crash if the tree cannot be linearized
2013-05-07 08:35:33 +00:00
kr.angelov
7ba27229b3
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
22f44ef61f
word completion in the C runtime. The runtime/python/test.py example is now using readline with word completion
2013-05-01 06:09:55 +00:00
kr.angelov
542dcaa0ec
the C runtime and the Python binding now have an API for parser evaluation. The API computes PARSEVAL and Exact Match for a given tree. As a side effect the abstract trees in Python are now compared for equality by value and not by reference
2013-04-19 10:57:46 +00:00
kr.angelov
f050609101
added API for computing bracketed strings from Python and C
2013-04-18 13:37:09 +00:00
kr.angelov
6a36ce77ff
the class PgfConcr from the Python binding now has a property name which returns the name of the concrete syntax
2013-02-11 15:51:26 +00:00
kr.angelov
5e2474e346
This patch removes Gregoire's parse_tokens function in the python binding and adds another implementation which builds on the existing API for lexers in the C runtime. Now it is possible to write incremental Lexers in Python
2013-02-01 09:29:43 +00:00