Lowcode: Extending Pharo with C Types to Improve Performance - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Conference Papers Year : 2016

Lowcode: Extending Pharo with C Types to Improve Performance


The highly dynamic nature of Smalltalk provides a high degree of flexibility, but at the expense of performance. On the other hand, static system programming languages such as C are really fast, but less flexible and harder to use than Smalltalk. Our hypothesis is that by mixing the concepts of these two worlds in a single programming environment, we are able to have improved performance and a high level of flexibility at the same time. In this work we extend Pharo by adding a type system that provides the native data types present in C along with the dynamic object type. We extend Pharo compiler and virtual machine to use our type system by add custom bytecode instructions for dealing with native data. With our approach we obtain a performance improvement on average between two and five times faster for numerical computations using single precision floating point arithmetic in Smalltalk.
Fichier principal
Vignette du fichier
Salg16a-IWST16-Lowcode.pdf (351.63 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-01353884 , version 1 (15-08-2016)



Ronie Salgado, Stéphane Ducasse. Lowcode: Extending Pharo with C Types to Improve Performance. International Workshop on Smalltalk Technologies, Aug 2016, Prague, Czech Republic. ⟨10.1145/2991041.2991064⟩. ⟨hal-01353884⟩
666 View
1541 Download



Gmail Facebook X LinkedIn More