1.1 What is different about Smalltalk
Smalltalk differs from many common programming languages in a number of ways. Unlike other programming languages like Java, Python, Ruby etc there is not just one, but quite a number of Smalltalk implementations like Pharo. The biggest difference is probably the fact that a Smalltalk implementation is not just a programming language but an Image-Based system. Before elaborating about what an Image-Based system actually is, it is important to understand the different components of a Smalltalk system.
A Pharo Smalltalk system consists of the following main components:
- Virtual Machine (VM): Is the only part that is hardware and operating system dependent. Pharo currently already has pre-built Virtual Machines for most common environments.
- Sources: Is a file that contains the source code of all parts of the Smalltalk system that don't often change.
- Image: The image component is your entire Smalltalk system.