Towards a flexible Pharo Compiler
Document type :
Communication dans un congrès avec actes
Title :
Towards a flexible Pharo Compiler
Author(s) :
Bera, Clément [Auteur correspondant]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Denker, Marcus [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Denker, Marcus [Auteur]

Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Scientific editor(s) :
Loïc Lagadec and Alain Plantec
Conference title :
IWST
Conference organizers(s) :
ESUG
City :
Annecy
Country :
France
Start date of the conference :
2013-09-10
Publication date :
2013-09-10
HAL domain(s) :
Informatique [cs]/Langage de programmation [cs.PL]
English abstract : [en]
The Pharo Smalltalk-inspired language and environment started its development with a codebase that can be traced back to the original Smalltalk-80 release from 1983. Over the last years, Pharo has been used as the basis ...
Show more >The Pharo Smalltalk-inspired language and environment started its development with a codebase that can be traced back to the original Smalltalk-80 release from 1983. Over the last years, Pharo has been used as the basis of many research projects. Often these experiments needed changes related to the compiler infrastructure. However, they did not use the existing compiler and instead implemented their own experimental solutions. This shows that despite being an impressive achievement considering its age of over 35 years, the compiler infrastructure needs to be improved. We identify three problems: (i) The architecture is not reusable, (ii) compiler can not be parametrized and (iii) the mapping between source code and bytecode is overly complex. Solving these problems will not only help researchers to develop new language features, but also the enhanced power of the infrastructure allows many tools and frameworks to be built that are important even for day-to-day development, such as debuggers and code transformation tools. In this paper we discuss the three problems, show how these are solved with a new Compiler model. We present an implementation, Opal, and show how Opal is used as the bases for many important tools for the everyday development of Pharo 3.Show less >
Show more >The Pharo Smalltalk-inspired language and environment started its development with a codebase that can be traced back to the original Smalltalk-80 release from 1983. Over the last years, Pharo has been used as the basis of many research projects. Often these experiments needed changes related to the compiler infrastructure. However, they did not use the existing compiler and instead implemented their own experimental solutions. This shows that despite being an impressive achievement considering its age of over 35 years, the compiler infrastructure needs to be improved. We identify three problems: (i) The architecture is not reusable, (ii) compiler can not be parametrized and (iii) the mapping between source code and bytecode is overly complex. Solving these problems will not only help researchers to develop new language features, but also the enhanced power of the infrastructure allows many tools and frameworks to be built that are important even for day-to-day development, such as debuggers and code transformation tools. In this paper we discuss the three problems, show how these are solved with a new Compiler model. We present an implementation, Opal, and show how Opal is used as the bases for many important tools for the everyday development of Pharo 3.Show less >
Language :
Anglais
Peer reviewed article :
Oui
Audience :
Internationale
Popular science :
Non
Collections :
Source :
Files
- https://hal.inria.fr/hal-00862411/document
- Open access
- Access the document
- https://hal.inria.fr/hal-00862411/document
- Open access
- Access the document
- document
- Open access
- Access the document
- Bera13a-OpalIWST.pdf
- Open access
- Access the document
- document
- Open access
- Access the document
- Bera13a-OpalIWST.pdf
- Open access
- Access the document