Hi,
This sounds really interesting. I would definitely like to see the
implementation both for the property graph and for the traversal language.
And to have it available as open source under a Pharo-friendly license (MIT
preferably) :).
In particular, I am curious about the language.
My implementation does not have these ambitions. I merely wanted to reach
objects using a simple traversal (btw, I only implemented a breadth-first
strategy) expressed in blocks, but having a more declarative query language
would be interesting indeed.
Could you give us more details?
Cheers,
Doru
On Wed, Dec 11, 2013 at 4:54 PM, Sam Adams <ssadams(a)us.ibm.com> wrote:
Hi Doru,
I've been observing how the graph support in Moose has been developing.
We in IBM Research have implemented a full Pharo implementation of the
TinkerPop Blueprints property graph de-facto standard
http://www.tinkerpop.com .
I am also completing a Pharo-binding for the Gremlin graph traversal
language that I call Glider (What you get when you cross a Gremlin and a
Mouse). Its very compact and a bit weird syntactically, but its very
powerful. Smells kinda like APL for graphs.
If the community is interested, we could go through the IBM Open Source
clearance process in the new year and see if we can contribute.
Regards,
Sam
Sam S. Adams, CTO - Contextual
Computing<https://w3-connections.ibm.com/communities/service/html/commun…
IBM Distinguished Engineer, IBM Research
Mobile: 919-696-6064, email: ssadams(a)us.ibm.com
Assistant: Linda R. Morrison. (720) 395-0460 Fax: (845) 491-4318, Tie:
676-0460, linda.r.morrison(a)us.ibm.com
<<Hebrews 11:6, Proverbs 3:5-6, Romans 1:16-17, 1 Corinthians 1:10>>
[image: Inactive hide details for Tudor Girba ---12/11/2013 10:22:50
AM---Hi, I put together a little implementation for traversals. It]Tudor
Girba ---12/11/2013 10:22:50 AM---Hi, I put together a little
implementation for traversals. It is inspired by an
From: Tudor Girba <tudor(a)tudorgirba.com>
To: moose-dev <moose-dev(a)iam.unibe.ch>ch>, Discusses Development of Pharo <
pharo-dev(a)lists.pharo.org>
Date: 12/11/2013 10:22 AM
Subject: [Moose-dev] [ANN] traversal-enabled objects with DeepTraverser
Sent by: moose-dev-bounces(a)iam.unibe.ch
------------------------------
Hi,
I put together a little implementation for traversals. It is inspired by
an original implementation from Mariano. Using DeepTraverser, you can
traverse arbitrary graphs by describing the traversal and by specifying the
actions you want to perform on the nodes and relations.
The code is available in the Moose image as part of the MooseAlgos
subproject, but can also be loaded separately in a Pharo image via:
Gofer new
url:
'*http://www.smalltalkhub.com/mc/Moose/DeepTraverser/main*<http://www.smalltalkhub.com/mc/Moose/DeepTraverser/main>
';
package: ‘ConfigurationOfDeepTraverser’;
load.
(Smalltalk globals at: #ConfigurationOfDeepTraverser) loadDevelopment.
Just to give you an idea, here are some representative examples:
Number
deep: #subclasses
do: [:each | Transcript show: each; cr].
Number deepCollect: #subclasses.
Number
deep: #subclasses
collect: #name.
Number
deep: #subclasses
do: [:each | Transcript show: each; cr]
relationDo: [ :from :to | Transcript show: from; show: ' <-- '; show:
to; cr ].
More details about the usages and a little description of the
implementation can be found here:
*http://www.humane-assessment.com/blog/traversal-enabled-pharo-objects/*<http://www.humane-assessment.com/blog/traversal-enabled-pharo-objects/>
Cheers,
Doru
--
*www.tudorgirba.com* <http://www.tudorgirba.com/>
"Every thing has its own flow"
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev