https://github.com/astares/Pharo-Teachable
You can easily load via catalog within Pharo 8.
The project shows the power of Smalltalk meachanisms within Pharo and is useful for mock object building in unit tests.
https://github.com/pharo-project/opensmalltalk-vm
Object subclass: #Person
slots: { #name. #firstName. #fullName => ComputedSlot with: [ :obj | obj firstName asString , ' ' , obj name asString ] }
classVariables: { }
package: 'Simple-Example'
|p| p := Person new. p name: 'Adams'. p firstName: 'Douglas'. p fullName
firstName: firstName lastName: lastName ^(self new) firstName: firstName; name: lastName; yourself
(Person firstName: 'Douglas' lastName: 'Adams') fullName
fullName ^self firstName asString , ' ' , self name asString
Maizo is aimed toward molecular- and reaction discovery based on big data of quantum mechanical global reaction route mappings. The global reaction data includes equilibrium structures (EQs), dissociation channels (DCs), and transition structures (TSs), which are automatically calculated by a global search on a potential energy surface using the GRRM (global reaction route mapping) method. Applications to molecular- and synthesis design are an important part of the project. Machine learning and visualization techniques as well as chemoinformatics methods are essential to acquire useful information from the large reaction data space. The team developed an RMapViewer, which was developed to visualize and analyze the GRRM outputs.
Object compiler
addPlugin:
(OCCompilerDynamicASTPlugin
newFromTransformBlock: [ :ast | (RBParseTreeRewriter replaceLiteral: 42 with: 'meaning of life') executeTree: ast. ast. ]
andPriority: 0
);
evaluate: '42'.