Back to the future in one week - implementing a Smalltalk VM in PyPy

Bolz, Carl Friedrich; Lienhard, Adrian; Matsakis, Nicholas D.; Nierstrasz, Oscar Marius; Renggli, Lukas; Rigo, Armin; Verwaest, Toon Wim Jan (2008). Back to the future in one week - implementing a Smalltalk VM in PyPy. In: Robert Hirschfeld and Kim Rose Hirschfeld, Robert; Rose, Kim (eds.) Self-Sustaining Systems. First Workshop, S3 2008 Potsdam, Germany, May 15-16, 2008 Revised Selected Papers. Lecture Notes in Computer Science: Vol. 5146 (pp. 123-139). Heidelberg: Springer Verlag 10.1007/978-3-540-89275-5_7

[img] Text
Seiten aus 10.1007_978-3-540-89275-5.pdf - Published Version
Restricted to registered users only
Available under License Publisher holds Copyright.

Download (289kB) | Request a copy

We report on our experiences with the Spy project, including implementation details and benchmark results. Spy is a re-implementation of the Squeak (i.e., Smalltalk-80) VM using the PyPy toolchain. The PyPy project allows code written in RPython, a subset of Python, to be translated to a multitude of different backends and architectures. During the translation, many aspects of the implementation can be independently tuned, such as the garbage collection algorithm or threading implementation. In this way, a whole host of interpreters can be derived from one abstract interpreter definition. Spy aims to bring these benefits to Squeak, allowing for greater portability and, eventually, improved performance. The current Spy codebase is able to run a small set of benchmarks that demonstrate performance superior to many similar Smalltalk VMs, but which still run slower than in Squeak itself. Spy was built from scratch over the course of a week during a joint Squeak-PyPy Sprint in Bern last autumn.

Item Type:

Book Section (Book Chapter)

Division/Institute:

08 Faculty of Science > Institute of Computer Science (INF)
08 Faculty of Science > Institute of Computer Science (INF) > Software Composition Group (SCG)

UniBE Contributor:

Lienhard, Adrian; Nierstrasz, Oscar Marius; Renggli, Lukas and Verwaest, Toon Wim Jan

Subjects:

000 Computer science, knowledge & systems
500 Science > 510 Mathematics

ISBN:

978-3-540-89275-5

Series:

Lecture Notes in Computer Science

Publisher:

Springer Verlag

Language:

English

Submitter:

Factscience Import

Date Deposited:

04 Oct 2013 15:22

Last Modified:

25 Oct 2019 14:44

Publisher DOI:

10.1007/978-3-540-89275-5_7

Web of Science ID:

000262100700007

BORIS DOI:

10.7892/boris.37159

URI:

https://boris.unibe.ch/id/eprint/37159 (FactScience: 207071)

Actions (login required)

Edit item Edit item
Provide Feedback