AspectJFragment { {{ void process() { CommandVisitor cV = new CommandVisitor(); Main.cg.traverse(this, "from AspectJFragment to Compound", cV); } }} } CommandVisitor { {{ void before(Compound host){ System.out.println("This is a Compound expression: "); host.print(); System.out.println(); } }} }