Corpus ID: 1156453

Design Principles Behind Smalltalk

  title={Design Principles Behind Smalltalk},
  author={Daniel H. H. Ingalls},
The purpose of the Smalltalk project is to provide computer support for the creative spirit in everyone. Our work flows from a vision that includes a creative individual and the best computing hardware available. We have chosen to concentrate on two principle areas of research: a language of description (programming language) that serves as an interface between the models in the human mind and those in computing hardware, and a language of interaction (user interface) that matches the human… Expand
Smalltalk in a C world
The Pragmatic Smalltalk compiler is introduced, which provides a dialect of Smalltalk that is designed from the ground up for close interoperability with C libraries. Expand
Although the Self project ended in 1995, its implementation, animation, user interface toolkit architecture, and even its prototype object model impact computer science today (2006). Expand
Unix, Plan 9 and the Lurking Smalltalk
The ambitions and trajectories of Smalltalk are contrasted with those of Unix and its descendents, exploring why Dan Ingalls’s vision appears not (yet) to have materialised, and how these two directions of change may yet be convergent within future Unix-derived systems. Expand
A browser for incremental programming
This work has extended the Smalltalk browser with dynamically computed virtual categories that dramatically improve the browser's support for incremental programming. Expand
Smalltalk in a C world
An interoperable framework for allowing code written in C, Objective-C, Smalltalk, and higher-level domain-specific languages to coexist with very low cognitive or performance overhead, and several techniques to improve the performance of late-bound dynamic languages are described. Expand
Panel: designing the next educational programming language
This panel proposes a set of principles that the next educational programming language should follow, and starts a dialog with the educational community to refine these principles and to consider next steps. Expand
The operating system: should there be one?
It is argued that the trajectory of the "file" abstraction through Unix and Plan 9 culminates in a Smalltalk-style object, with other filesystem calls as a primitive metasystem, arguing that an operating system is still necessary after all. Expand
MudPie: layers in the ball of mud
A tool is described called MudPie that uses well-known techniques to visualize the dependency structure as it is reflected in the code and applies these techniques to Smalltalk and shows how SUnit tests can detect the cycles as they occur. Expand
Gaucho: Programming == Modeling
Rumor has it that programmers write software. Indeed, any modern integrated development environment (IDE) features numerous tools providing the means to write and browse textual representations ofExpand
Object-focused environments revisited
The desktop metaphor applied to Object-Oriented languages in the form of an object-focused environment is explored, and a detailed description of the working prototype, named Gaucho, is provided. Expand