Java is the canonical language for teaching introductory programming, but its complex syntax and abundance of constructs are difficult for beginners to learn. This paper shows how object-oriented programming in Java can be made more accessible to beginners through the use of “language levels”, a hierarchy of progressively richer subsets of Java. This hierarchy is implemented as an extension of the DrJava pedagogic programming environment. Categories and Subject Descriptors D.2.6 [Software Engineering]: Programming Environments Keywords DrJava, language levels, object-oriented programming
James I. Hsia, Elspeth Simpson, Daniel Smith, Robe