Evaluating Kiama abstract state machines for a Java implementation