Good day, Ken.

Could you clarify why you think that this proposal requires custom
serializers?

On Tue, Nov 18, 2025 at 11:39 PM Ken Hu <[email protected]> wrote:

> I guess I'm still not certain how this DSL would get packaged with the
> GLVs. One of the situations I'm trying to avoid is the one we face with
> custom type serialization. Providers with custom types generally need to
> package their serializers as a separate module which users of the GLV will
> then add as a dependency. This creates confusion for users as they aren't
> able to just use the GLV by itself. They need to grab an additional
> dependency from their provider as well. It isn't always clear to them that
> this is the case.
>
> On Fri, Nov 14, 2025 at 10:04 AM Andrii Lomakin <[email protected]>
> wrote:
>
> > Hi Ken,
> >
> > To clarify, the functionality you mentioned regarding remote Traversal
> > from a GLV is already fully supported by TinkerPop.
> >
> > While there are some current issues with the DSL processor, they are
> > implementation details that we intend to resolve through the
> > contribution of our version of an annotation processor, which will not
> > require any changes to the TinkerPop documentation.
> >
> > For a concrete example of our implementation of DSL, please see the
> > following:
> >
> >
> https://github.com/JetBrains/youtrackdb/blob/develop/core/src/main/java/com/jetbrains/youtrackdb/api/gremlin/YTDBGraphTraversalDSL.java
> > (
> >
> https://github.com/JetBrains/youtrackdb/blob/develop/core/src/main/java/com/jetbrains/youtrackdb/api/gremlin/YTDBGraphTraversalDSL.java
> > )
> >
> > Andrii Lomakin,
> > YouTrackDB development lead.
> >
> > On Fri, Nov 14, 2025 at 6:59 PM Andrii Lomakin <[email protected]
> >
> > wrote:
> > >
> > > Hi Ken,
> > >
> > > The scenario you described regarding remote Traversal from a GLV is
> > > automatically handled.
> > >
> > > The GLV would provide code similar to the existing implementation we
> > > already have, which can be found here:
> > >
> >
> https://github.com/JetBrains/youtrackdb/blob/develop/core/src/main/java/com/jetbrains/youtrackdb/api/gremlin/YTDBGraphTraversalSourceDSL.java#L95
> > >
> > > Andrii Lomakin,
> > > YouTrackDB development lead.
> > >
> > > On Fri, Nov 14, 2025 at 6:40 PM Ken Hu <[email protected]> wrote:
> > > >
> > > > What does this mean if someone tries to send a remote Traversal from
> a
> > GLV?
> > > > I'm guessing that is what makes "1. Providing DSL that does the same
> > call"
> > > > necessary. I think that scripts and traversals need to have the same
> > > > capabilities "out of the box" when using the GLVs. So while I think
> > this is
> > > > a good idea, I would also like to see a proposal on what can be done
> > for
> > > > remote Traversals.
> > > >
> > > > On Thu, Nov 6, 2025 at 9:47 AM Andrea Child
> > > > <[email protected]> wrote:
> > > >
> > > > > Hi Andrii,
> > > > >
> > > > > I like your idea as it would improve readability of traversals to
> be
> > able
> > > > > to reference the service directly in the grammar instead of via the
> > call
> > > > > step. Looking forward to the contribution!
> > > > >
> > > > > Andrea
> > > > >
> > > > > From: Andrii Lomakin <[email protected]>
> > > > > Date: Wednesday, November 5, 2025 at 8:15 AM
> > > > > To: [email protected] <[email protected]>
> > > > > Subject: Proposal: Intorduction of equalence between
> > call(serviceName,
> > > > > args:List) and method call in scripts
> > > > >
> > > > > Good day, colleagues.
> > > > >
> > > > > I would like to propose an approach to enhancing the extensibility
> > of the
> > > > > Gremlin script, which, although it does not solve all problems,
> will
> > make
> > > > > many Gremlin extensions feel native.
> > > > > The Idea, as you may have already guessed from the title, is
> simple:
> > if a
> > > > > service is registered in TinkerPop to treat it as a method call
> with
> > > > > parameters, such as args: List<Object> as an argument.
> > > > >
> > > > > So call like: g.schemClass("User") will be translated to
> > > > > g.call("schemaClass", "args" : ["User])
> > > > >
> > > > > In such a case, providers will extend Gremlin twofold:
> > > > > 1. Providing DSL that does the same call.
> > > > > 2. Registering related service.
> > > > >
> > > > > If you agree with this proposal, I would be glad to contribute it,
> > as I
> > > > > mentioned, it does not solve all issues, such as the usage of
> custom
> > > > > predicates, but I am under the impression that it can be extended
> to
> > that
> > > > > case too in the future.
> > > > >
> >
>

Reply via email to