[
https://issues.apache.org/jira/browse/TINKERPOP-1232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15237450#comment-15237450
]
Marko A. Rodriguez commented on TINKERPOP-1232:
-----------------------------------------------
[~PommeVerte] ping'd me this link which is worth reading:
https://github.com/jbmusso/gremlin-javascript/issues/41
> Write a tutorial demonstrating the 3 ways to write a Gremlin language variant.
> ------------------------------------------------------------------------------
>
> Key: TINKERPOP-1232
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1232
> Project: TinkerPop
> Issue Type: Improvement
> Components: documentation
> Affects Versions: 3.1.1-incubating
> Reporter: Marko A. Rodriguez
>
> Talking with [~rustyrazorblade] about collaborating on a Gremlin tutorial for
> language designers. Here is what we came up with.
> We will use Python as the host language and demonstrate 3 ways to create
> Gremlin-Python.
> * Using Jython: With Jython you have direct access to the JVM and thus can
> call {{GraphTraversal}} methods directly. We can expose some Python sugar
> here and there to show why its good to have a language specific variant. See
> Gremlin-Scala for inspiration.
> * Using JNI: With Python, we have a {{PythonTraversal}} Python class. That
> class then uses Java Gateway to interact (via proxy) with {{GraphTraversal}}.
> This was done in the past as an experiment with R using rJava.
> * Using String: With Python, we have a {{PythonTraversal}} Python class where
> {{out("knows")}} simply appends {{"out(\"knows\")"}} to a string builder. The
> result can then be a String sent to a {{RemoteConnection}} for evaluation.
> These three models are the three ways in which any language can embed
> Gremlin.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)