This is the mail archive of the kawa@sources.redhat.com mailing list for the Kawa project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Java rule engine with rules expressed in Scheme


> I am trying to write a Java rule engine application where the rules can be
> expressed in scheme. 

This is easy, I do it all the time.  See the short thread on:

http://sources.redhat.com/ml/kawa/2003-q1/msg00119.html

Write back if you would like a more detailed example.

Hmm.  Mailing lists boxes seem down, so I'll repeat some info here.  You
can see:

http://216.239.57.104/search?q=cache:tIRxOJpslfEJ:sources.redhat.com/ml/kawa/2003-q1/msg00123.html

and Per's reply

| Slightly better/cleaner might be to use Procedure:
| 
|    Procedure test = (Procedure) env.get( "test", null );
|    test.apply0();
| 
| Though I think it unlikely that user-defined functions
| will no longer be ModuleMethod, it is even less likely
| that they will cease being Procecedures.  In any case,
| using Procedure also works for builtin or halt-written
| procedures.
| 
| You might also consider using 'eval' instead of 'get':
| 
|    Scheme scm = Scheme.getInstance();
|    // or scm = new Scheme();
|    Procedure test = (Procedure) scm.eval("test");
| 
| This is slower than using get (though it doesn't matter
| unless its in an inner loop), but you don't have to
| explicitly work with environments.
| 

Regards,
Chris Dean


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]