My Path in Research – The 1980s
If the 1970s were, for me, the years of foundations, languages, compilers, and the first attempts to understand software portability, the 1980s marked the maturation of these concerns. It was the decade in which my interest became increasingly focused on the systematic design of software products, on models of the development process, and on the possibility of building tools able to support that activity.
In those years, my research unfolded at the intersection of theoretical reflection, teaching, and laboratory life. From that tension emerged ideas that would structure my thinking for a long time: the abstract machine, the interform, the model of design as a process of refinement, and, later, the INTERFORM project.
A New Decade, a New Focus
The beginning of the 1980s found me after a period of intense accumulation, during which I had worked on programming languages, compilers, and program portability. These research directions did not remain confined to the technical area of implementation. Gradually, they pushed me toward a broader question: how can the process through which a program comes into being be understood and modeled?
Behind this question lay a deeper dissatisfaction with the artisanal, fragile, and often improvised character of software development. The more my experience grew, the more strongly I felt the need for a discipline of design, comparable — at least in part — to the rigor found in other branches of engineering.
From this point of view, the 1980s were not merely a continuation of the 1970s, but a shift of emphasis: from concern with program correctness and portability toward concern with the internal order of the software process.
Searching for Order in Software Chaos
The technological context of the period was itself contradictory. On the one hand, computer science was expanding, diversifying, and beginning to move beyond the world of large, centralized computers. On the other hand, this diversification intensified software fragmentation and made increasingly visible the limits of a development process based only on individual talent, improvisation, and local experience.
For me, research in that decade was marked by the desire to find a principle of coherence: a way of describing the path from specification to implementation without reducing design to simple mechanical execution. Here one of the central ideas of my research took shape: design is neither pure inspiration nor the mere application of rules, but a succession of controlled transformations performed on intermediate descriptions.
In those years, the laboratory, the courses, and scientific writing worked together. What I was trying to formulate theoretically was reflected in the way I taught, and what I observed in teaching and practical activity returned in articles as a conceptual problem.
The Abstract Machine and the Interform
One direction in which this reflection evolved was the formulation of the concept of the abstract machine, as a model of a stage or level of design. I was interested not only in the final program, but also in the intermediate structures through which it passes before reaching an executable form.
From this emerged the idea of the interform: an intermediate description, a carrier of meaning, expressing the state of the project at a given moment in its development. For me, the interform was not a terminological artifice, but the key to an engineering approach to software design. It allowed me to see the software product not only as a final object, but as the result of a structurable becoming.
During this period I tried to formulate more clearly what can be modeled formally in a creative activity and where the role of intuition, experience, and the designer’s judgment inevitably remains. This tension always seemed essential to me: design must be supported by models and tools without being reduced to naive automatisms.
From Model to System: INTERFORM
A natural step was the transition from theoretical reflection to the attempt to materialize it in a concrete system. This is how the INTERFORM project emerged. For me, it represented more than a simple application: it was the practical test of a vision of computer-aided program development.
INTERFORM aimed to provide an integrated framework in which the software product could be followed and elaborated through coherent intermediate forms, with the support of appropriate tools. In this sense, it represented the attempt to transform a theory of design into a working architecture.
Looking back, I realize that this direction concentrated many of the themes that had previously preoccupied me: formalism, portability, transformation, the role of intermediate structures, and the need for an overall view of the software process.
Encountering Artificial Intelligence
Also in the 1980s, my interest in artificial intelligence became more visible. Although my attraction to this field was older, only then did it begin to take a clearer form, both through theoretical reflection and through the attempt to understand to what extent design and problem-solving processes could be assisted by models of knowledge.
For me, the link between software engineering and artificial intelligence was not external. It arose naturally from the same concern with structures, representations, and transformation processes. If in software engineering I was interested in the order of design, in artificial intelligence I was interested in how knowledge itself could be organized, represented, and used.
In this way, the 1980s were also a decade of opening: without abandoning the core of my concerns about software design, I began to sense that some of my questions already exceeded the classical framework of programming and required a dialogue with the broader field of artificial intelligence.
Links to the Thematic Presentation
This page has a narrative and chronological role. For the presentation by domains, articles, syntheses, and documents, see the thematic pages below:
See also: Software Engineering • Order in Chaos • INTERFORM – the 1987 article
Thematic Landmarks of the Decade
- 👉 Modeling the software design process
- 👉 Abstract machine and intermediate forms
- 👉 INTERFORM as a CAD system for program development
- 👉 The first explicit bridges toward artificial intelligence
This page presents the narrative thread of the research. For the organization by domains, articles, and projects, see Scientific Research.





