Re: Migration from Loom to Powerloom

Thomas Russ <[email protected]> Wed, 22 Nov 2006 16:17:13 -0800
Newsgroups gmane.comp.ai.powerloom
Message-ID <[email protected]>
On Nov 21, 2006, at 6:50 AM, Young, David wrote:

> Hey folks. I'm coming from a Loom background, and have begun  
> looking at
> PowerLoom. I think the best way for me to make the leap is to  
> migrate an
> existing Loom app, and I could use a bit of help. What follows is a
> prototype implementation, in Loom, of the 13 original Allen time  
> primitives.
> When you have a bit of time, would you please take a few of these  
> primitives
> and translate them to PowerLoom? Comments about the original are  
> welcome, in
> case our approach is lacking. Thanks very much for your help.

I've run the code below through the automatic Loom => PowerLoom
translator.  I will forward that to David in a separate EMail.

This translator is available as part of the normal PowerLoom
distribution, and is invoked like:

(translate-loom-file "source-file" "destination-file")

This is precisely present to assist in the migration from
Loom to PowerLoom.  It is designed to be a 95% solution to
the migration of standard Loom knowledge bases.  (Loom which
uses production rules or actions & methods will be much harder
to transfer -- that wasn't the case here.)

I did uncover a couple of bugs in the translator, which are
fixed but not yet committed to the automatic snapshot.  You'll
need to wait just a little bit for that to be made available.

The automatically translated code was able to load into
PowerLoom with only a couple of minor edits.  The edits were
needed to transform two Loom relations into functions.  They
are meant to be single-valued but were not explicitly marked
as such in the source file.  (Loom's classifier would have
figured that out, but we don't run that in the translator in
PowerLoom.)

Then some additional module definitions needed to be added
at the top of the file and it was able to load.  I didn't
really have a lot of time to look over the results, since
I'm rather busy right now, but I'll be happy to correspond
about this in a little bit.

As a general point, though, it might be a useful exercise
to use PowerLoom's time point and duration representation
instead of numbers to mark the times, although that does
make it a bit more anchored to a calendar and thus less
general.