Throughout the Nashorn code base, there are many occurrences of anonymous inner classes (and non-anonymous classes) that extend NodeVisitor<LexicalContext>. To reduce noise, an abstract class BasicNodeVisitor that extends NodeVisitor<LexicalContext> should be introduced. If possible, common code used in all / many of the current occurrences should also be factored out to appropriate methods in the BasicNodeVisitor.