Bootstrapping a Smalltalk

Abstract : Smalltalk is a reflective system. It means that it is defined in itself in a causally connected way. Traditionally, Smalltalk systems evolved by modifying and cloning what is called an image (a chunk of memory containing all the objects at a given point in time). During the evolution of the system, objects representing it are modified. However, such an image modification and cloning poses several problems: (1) There is no operational machine-executable algorithm that allows one to build a system from scratch. A system object may be modified but it may be difficult to reproduce its exact state before the changes. Therefore it is difficult to get a reproducible process. (2) As a consequence, certain classes may not have been initialized since years. (3) Finally, since the system acts as a living system, it is not simple to evolve the kernel for introducing new abstractions without performing some kind of brain surgery on oneself. There is a need to have a step by step process to build Smalltalk kernels from scratch. In this paper, after an analysis of past and current practices to mutate or generate kernels, we describe a kernel bootstrap process step-by-step. First the illusion of the existence of a kernel is created via stubs objects. Second the classes and meta-classes hierarchy are generated. Code is compiled and finally information needed by the virtual machine and execution are generated and installed.
Type de document :
Communication dans un congrès
Smalltalks, Nov 2011, Buenos Aires, Argentina. 2011
Liste complète des métadonnées

Littérature citée [21 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/inria-00636785
Contributeur : Lse Lse <>
Soumis le : vendredi 28 octobre 2011 - 11:50:05
Dernière modification le : jeudi 12 avril 2018 - 16:25:36
Document(s) archivé(s) le : jeudi 15 novembre 2012 - 10:46:09

Fichier

Casa11a-Smalltalks-Bootstrappi...
Fichiers produits par l'(les) auteur(s)

Identifiants

  • HAL Id : inria-00636785, version 1

Citation

Gwenaël Casaccio, Stéphane Ducasse, Luc Fabresse, Jean-Baptiste Arnaud, Benjamin Van Ryseghem. Bootstrapping a Smalltalk. Smalltalks, Nov 2011, Buenos Aires, Argentina. 2011. 〈inria-00636785〉

Partager

Métriques

Consultations de la notice

759

Téléchargements de fichiers

381