The Squeak Environment

Preview:

DESCRIPTION

The Squeak Environment. Smalltalk Run-Time Architecture. Virtual Machine + Image + Changes and Sources Image = bytecodes Sources and changes = code (text). Runtime Architecture. The byte-code is in fact translated into native code by a just-in-time compiler. - PowerPoint PPT Presentation

Citation preview

S.Ducasse 1

QuickTime™ and aTIFF (Uncompressed) decompressorare needed to see this picture.

Stéphane DucasseStephane.Ducasse@univ-savoie.frhttp://www.listic.univ-savoie.fr/~ducasse/

The Squeak Environment

S.Ducasse 2

License: CC-Attribution-ShareAlike 2.0http://creativecommons.org/licenses/by-sa/2.0/

S.Ducasse 3

Smalltalk Run-Time Architecture• Virtual Machine + Image + Changes and Sources

• Image = bytecodes• Sources and changes = code (text)

A byte-code interpreter:the virtual machine interpretes the imageIMAGE2.IMIMAGE2.CHAStandard SOURCESShared by everybody

IMAGE1.IMIMAGE1.CHAAll the objects of the systemat a moment in time

One per user+

S.Ducasse 4

Runtime Architecture• The byte-code is in fact translated into native

code by a just-in-time compiler.

• The source and the changes are not necessary for interpreting the byte-code, this is just for the development. Normally they are removed for deployment.

• An application can be delivered as some byte-code files that will be executed with a VM. The development image is stripped to remove the unnecessary development components.

S.Ducasse 5

Mouse Semantics

SelectOperateWindowRed BlueYellow

S.Ducasse 6

World Menu and Open Menu

S.Ducasse 7

Browsing a class

S.Ducasse 8

Browsing methods

S.Ducasse 9

Inspector• To look inside objects• Violates encapsulation!!!• Monster new inspect

S.Ducasse 10

Direct Manipulation• Bring the halo• Experiment

S.Ducasse 11

Debugger?

S.Ducasse 12

Debugger !!!

S.Ducasse 13

FileList

S.Ducasse 14

Message Names Finder

S.Ducasse 15

S.Ducasse 16

Methods in ChangeSets + Versions

S.Ducasse 17

Preferences

S.Ducasse 18

SUnit

S.Ducasse 19

Transcript is Sloooooooooooow

19

S.Ducasse 20

Squeak Map Package Loader

S.Ducasse 21

Monticello

S.Ducasse 22

Monticello Change Browser

S.Ducasse 23

Repository

S.Ducasse 24

SqueakSource

24

S.Ducasse 25

Changes Menu…Recently logged files• Everything you do is recorded

S.Ducasse 26

ChangeSorter: to sort your changes

S.Ducasse 27

Cool Packages to LoadShoutRefactoring BrowsereCompletion

S.Ducasse 28

Change your MindEverything you do is recorded !!So try and learn how to recover your code

You are smart so Experiment, Learn for you, browse, educate your taste (not all Squeak code is good)Be aggressive, ***all*** the code is there

Recommended