In any programming system the environment in which a program is constructed is tightly bound to the format of the data used to represent that program. As software development environments are becoming more sophisticated, there is a growing need to get richer representations of programs that allow programs to be treated at a much higher level of abstraction than as sequences of characters in source files.In this paper we explore the use of a database representation as a medium for representing and manipulating programs. We report on the work we did on two different Eclipse plugins exemplifying the potential advantages of such a representation. The first plugin explores the use of a database representation to store programs written in a traditional programming language (Java). The second plugin is part of a research effort to try to define a programming language directly in terms of a database representation.
[1]
Kris De Volder,et al.
Navigating and querying code without getting lost
,
2003,
AOSD '03.
[2]
Mark Chu-Carroll,et al.
Supporting aggregation in fine grained software configuration management
,
2002,
SIGSOFT '02/FSE-10.
[3]
Harold Ossher,et al.
Subject-oriented programming: a critique of pure objects
,
1993,
OOPSLA '93.
[4]
Charles Simonyi,et al.
The Death of Computer Languages, The Birth of Intentional Programming
,
1995
.
[5]
David Robson,et al.
Smalltalk-80: The Language and Its Implementation
,
1983
.
[6]
Gary T. Leavens,et al.
MultiJava: modular open classes and symmetric multiple dispatch for Java
,
2000,
OOPSLA '00.