Top Banner
Runtime & changes S. Ducasse http://www.pharo.org
7
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Pharo Hands-On: 04 image-runtime

Runtime & changes S. Ducasse http://www.pharo.org

Page 2: Pharo Hands-On: 04 image-runtime

Execution model

Virtual machine

Bytecode -> C-interpreter -> assembleur generated on the fly

Page 3: Pharo Hands-On: 04 image-runtime

Files

VM (platform dependent)

.sources (all the sources of a distribution)

.changes (all your changes - a tape)

.image (all your binary objects)

Page 4: Pharo Hands-On: 04 image-runtime

“Image”

an image is a heap-dump

contains all the objects = all the system at a point in time

nice and handy ***system cache***

Generally not a deployement artefact (advanced users)

Page 5: Pharo Hands-On: 04 image-runtime

Image/Change

Change1/Image1, ChangeX/ImageX

The system keeps them in sync

NB: VM can run without sources and changes (but you will not be able to recognise your code :)

Page 6: Pharo Hands-On: 04 image-runtime

Changes

“changes” is a logging tape and cheap emergency tape

commit your changes to SmalltalkHub or (Git for advanced users)

Page 7: Pharo Hands-On: 04 image-runtime

Development process

Define packages

Define project dependencies (Metacello configuration)

Save packages

Save project configurations

Define a CI job that automatically loads and verifies everything