1
0
forked from GitHub/gf-core
Commit Graph

112 Commits

Author SHA1 Message Date
Krasimir Angelov
06ec6b3e92 added a method in Python for pretty printing a grammar 2017-09-26 09:16:48 +02:00
Krasimir Angelov
527d97fdd2 fix the type signatures for the linearizer callbacks 2017-09-08 22:58:42 +02:00
Krasimir Angelov
301b100988 word completion in the C parser now returns information about the function which generates the token 2017-09-06 14:37:51 +02:00
Krasimir Angelov
15d014abb8 the parser in the C runtime can now detect incomplete sentences just like the parser in the Haskell runtime. This is also reflected in all bindings. 2017-09-06 12:38:42 +02:00
Krasimir Angelov
eaf9f0c3ac the C runtime now supports the same customizations for GraphViz as the Haskell runtime 2017-08-31 10:58:49 +02:00
Krasimir Angelov
a0fc2f28e8 more in the runtime documentation 2017-08-28 14:23:47 +02:00
Krasimir Angelov
dfc32b9616 lookupSentence is now available from Python 2017-08-20 20:21:33 +02:00
Krasimir Angelov
a8eeb49767 the linearizer API now allows to detect metavariables. This is used for instancein the lookup where the tokens produced from the metavariables are interpreted as distinct from all other tokens. 2017-08-07 16:39:19 +02:00
krasimir
a839bdc687 bugfix for print names in the C runtime and expose the functionality from Java 2017-05-11 09:11:30 +00:00
krasimir
33ec916c9c make some of the functions in the Python binding static 2017-04-19 09:45:15 +00:00
krasimir
71a9f2cba8 use gu_string_buf_data in the Python binding to avoid copying 2017-04-13 13:47:13 +00:00
krasimir
2588a6f016 gu_string_buf -> gu_new_string_buf in libgu 2017-04-13 13:43:48 +00:00
krasimir
bd1128e303 now the Python API also accepts types as start categories. Using a string is still ok. 2017-01-26 13:31:08 +00:00
krasimir
3467a54965 bring the Haskell binding a bit closer to the pure Haskell API 2017-01-26 12:48:22 +00:00
prasanth.kolachina
ef33f1ab35 python examples compatible with both Python 2 and 3 2016-09-19 08:32:08 +00:00
krasimir
5a9b5dc860 python2 is now supported. the patch is based on a contribution from Vinit Ravishankar 2016-08-01 10:39:54 +00:00
krasimir
2605ee85d7 two memory leaks in the Python bindings 2016-08-01 10:31:37 +00:00
krasimir
821878773c bugfix in the load method in the Python binding. The file was never closed. 2016-06-16 08:02:06 +00:00
krasimir
fdf4bd3196 change the API for literals in Java and Python. The input sentence is no longer a parameter to the callbacks. 2016-05-20 15:20:02 +00:00
krasimir
6947d36e1a fix in the Python binding. The input sentence to the parser needs to be copied since otherwise the Python string may be discarded the garbage collector 2015-12-18 19:46:59 +00:00
krasimir
5faa99e89d added bracketedLinearizeAll in Python 2015-09-30 08:35:09 +00:00
krasimir
6b90024d09 pickling/unpickling for types 2015-08-12 10:11:00 +00:00
krasimir
ac6ce58777 support for transparent pickling/unpickling of abstract expressions in Python 2015-08-12 09:21:23 +00:00
krasimir
b3680b6025 merge the states for reasoning and evaluation into a single structure 2015-07-03 11:53:52 +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
82eeb3ef2b fix a memory management error in linearizeAll in the python binding. a new temporary pool is used on every iteration to keep memory allocation to constant 2015-04-27 19:27:11 +00:00
krasimir
c1129e15fa fix warning in the Python binding 2015-04-27 18:33:18 +00:00
krasimir
5f25804b73 mark two more functions as static in the Python binding 2015-04-27 18:24:21 +00:00
prasanth.kolachina
8efff76703 K translations in pipeline 2015-04-27 15:59:49 +00:00
prasanth.kolachina
53f0307404 K Linearizations 2015-04-27 15:59:25 +00:00
prasanth.kolachina
dedad558a8 Python linearizeAll with lazyness
linearizeAll function will take an expression and an optional
n keyword argument and return an iterator to the n-variant 
linearizations of the expression.
2015-04-27 15:47:57 +00:00
prasant.kolachina
9b723af995 remove parsing for long sentences, to stop pipeline from crashing/hanging 2015-04-27 13:05:14 +00:00
prasant.kolachina
2555891654 bug fix in python examples 2015-04-26 11:00:17 +00:00
prasant.kolachina
3ec571b03d bug fix python examples 2015-04-26 10:18:21 +00:00
prasant.kolachina
aa79f6bb28 Bug fix python examples 2015-04-26 10:16:23 +00:00
prasanth.kolachina
c17501540a Changes in lexer 2015-04-26 07:44:18 +00:00
prasanth.kolachina
100c583916 Bug fix in gf_utils 2015-04-24 18:46:03 +00:00
prasanth.kolachina
7d876fd665 No debug messages 2015-04-22 18:51:55 +00:00
prasanth.kolachina
12216449e0 Minor bug in pgf parse and kparse 2015-04-22 18:49:49 +00:00
prasanth.kolachina
57006b6296 README for Python translation pipeline 2015-04-22 13:14:26 +00:00
prasanth.kolachina
c3a626686e Cleaned up Python Translation pipeline 2015-04-22 11:30:26 +00:00
prasanth.kolachina
2b1b0568a1 Examples for using Python bindings
The examples directory contains two modules for using Python bindings in GF.
The gf_utils module provides various Python functions to perform parsing
and linearization using the C runtime. Additionally, the translation_pipeline
module is an replica of the current pipeline used in the Wide-coverage
Web translation pipeline.
2015-04-22 07:04:21 +00:00
kr.angelov
35c11d5f5a fix the reference counting for callbacks in Python 2015-01-05 11:24: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
00922153aa CAPIT is now naturally supported in the C runtime 2014-10-22 15:05:55 +00:00
kr.angelov
71d5cae4e3 make the fields of BracketedString in the Python binding read/write 2014-10-22 12:18:07 +00:00
kr.angelov
86e9acc7a7 throw away the long obsolete runtime type information in the C runtime 2014-10-09 13:44:26 +00:00
kr.angelov
7036d56d29 the literals API is now exposed in Python 2014-09-25 11:59:40 +00:00
kr.angelov
818896dec2 fix a portability problem with the Python binding (found by Prasanth) 2014-09-17 16:12:40 +00:00
kr.angelov
0222d2440c implemented computing with abstract syntax trees. It passes all test cases except those that require def rules. The design is consistent with the STG virtual machine 2014-07-08 19:45:49 +00:00