[[Documentation]]

*Inline Code

This section is subject to modification.

**Syntax

 inline_define atom
    [[/*inline_define*/ inline_define_code_in_Java ]]
 inline atom
    [[/*inline*/ inline_code_in_Java ]](X1,...,Xn)

**Specification

The execution of inline code takes place
immediately after the rewriting task of the rule
that creates the inline atom is finished.

Defined variables:
 me .... the inline atom itself
 mem ... me.getMem() 

**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)


Front page List of pages Search Recent changes Backup   Help   RSS of recent changes