ABSTRACT

This paper presents the design goals for the FOOL pro- gramming environment currently under development at the Computer Engineering Laboratory of ETH Zurich. The programming environment supports the user in writing parallel object-oriented programs for the ADAM multiprocessor. We observed that object- oriented programming systems have to be highly inter- active because programmers often have to browse through the class database. To achieve adequate re- sponse times, some compiler functions were integrated directly into the program editor. In a first step, the scanning function was incorporated into the editor, giving it the ability to recognize the lexical elements of the language (keywords, identifiers, special characters, meta symbols). We call such an editor a token editor because it internally manages the program text as a token list. We discuss the design and implementation of our token editor, based on Apple's object-oriented application framework MacApp®, as well as the concept of layering and the use of abstract classes to achieve a token editor implementation nearly independent of the programming language.