Awesome
Ghost
Ghost is framework to implement unnatural smalltalk objects like proxies or prototypes. It provides suitable infrastructure to implement message processing in special way
Installation
Use following script for Pharo version >= 10:
Metacello new
baseline: 'Ghost';
repository: 'github://pharo-ide/Ghost';
load
To add dependency in your project baseline:
spec
baseline: 'Ghost'
with: [ spec repository: 'github://pharo-ide/Ghost:v6.0.0' ]
Notice that Pharo versions <= 9 were based on GTTools. In current Pharo it was removed and replaced by NewTools project. Ghost requires a dedicated tooling support to be able inspect Ghost objects. In order to use Ghost in old versions of Pharo load pharo9 branch instead of master:
Metacello new
baseline: 'Ghost';
repository: 'github://pharo-ide/Ghost:pharo9';
load