NOTE: LMNtal Java runtime is no longer supported but this page is left as a record. LMNtal Java allows inline code written in Java. Foreign-Language Interface in LMNtal JavaSyntaxAn inline_define atom is an atom of the form
An inline atom is an atom of the form
SpecificationThe execution of inline code takes place immediately after the rewriting task of the rule that creates the inline atom is finished. Two defined variables can be used in the Java code in an inline atom:
Examples[:/*inline_define*/class Foo { static int counter = 0; } :]. [:/*inline*/System.out.println(me.nthAtom(0).getName()); me.remove(); me.nthAtom(0).remove();:]("LMNtal\n") % ==> prints LMNtal hello(X) :- [:/*inline*/ Atom a = mem.newAtom(new Functor("ok",1)); me.remove(); mem.relink(a,0,me,0);:](X). hello(there). % ==> ok(there) |