Hi Folks,

Work on 6.0b1 is progressing nicely. Defmodules are the big new
feature for this release, and the work is about half done. Defmodules
have two purposes, really: one is execution control because each
modules has its own agenda, and the other is namespace
partitioning. Part one is completed: multiple namespaces with separate
agendas are functioning well. The interface is very similar to that of
CLIPS with one difference (and this description isn't intended to make
any sense to you unless you're familiar with defmodules in
CLIPS:) CLIPS can be in a state in which no module has the focus, such
that even though every existing module has activated rules, no rules
will fire whtn (run) is called. Jess does not have such a state: if
the focus stack is empty, the MAIN module gets the focus by default.

I'm starting the implementation of part two, and again, the interface
and behaviour is very similar to CLIPS, but again there is one
significant difference. In Jess, fact types defined in the MAIN module
will automatically be visible to all modules. You don't need to
explicitly export anything from MAIN, nor import anything from
it. Failing to export (initial-fact) from MAIN is a common beginner
error in CLIPS, and requiring the user to do so just seems like
busywork -- especially since Jess uses other kinds of magic facts.

I think these two changes encourage a programming style in which MAIN
is convenient to use for clearly "global" rules and templates, and
there will also be less of barrier to using separate modules.

---------------------------------------------------------
Ernest Friedman-Hill  
Distributed Systems Research        Phone: (925) 294-2154
Sandia National Labs                FAX:   (925) 294-2234
Org. 8920, MS 9012                  [EMAIL PROTECTED]
PO Box 969                  http://herzberg.ca.sandia.gov
Livermore, CA 94550

---------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the
list (use your own address!) List problems? Notify [EMAIL PROTECTED]
---------------------------------------------------------------------

Reply via email to