Opal Compiler

The OpalCompiler is a Smalltalk-to-Bytecode compiler for Pharo. Originaly it was named NewCompiler, which can be found here.

  • Support for full block closures.
  • Easy to understand and modify.
  • Based on the AST of the Refactoring Engine.
  • Retargable Backend

Users of OpalCompiler

The OpalCompiler has been used in a number of projects:

  • ByteSurgeon — Runtime Bytecode Transformation for Smalltalk
  • ChangeBoxes — Modeling Change as a first-class entity
  • Reflectivity — Persephone, Geppetto and the rest.
  • AOStASqueak — an experimental port of AOStA to Squeak
  • Babel - Scripting Language Experiments for Squeak
  • ThothCompiler — Enabling the Parser of the NewCompiler to be used in an up-to-date (10/2009) Pharo image.
  • Helvetia — Context Specific Languages with Homogeneous Tool Integration
  • Albedo — Unified approach to structural and behavioral reflection

Ready to run image can be found in the hudson server


  • Main Contact: Marcus Denker
  • The OpalCompiler Mailinglist is pharo-compiler@lists.gforge.inria.fr. You can use the Mailman web interface to subscribe.
  • People: Anthony Hannan (original Author), Marcus Denker, Mathieu Suen, Jorge Ressia...
Last changed by admin on 21 April 2009