What it does
Pharo combines a dynamic, reflective Smalltalk language with a live programming environment. Developers work in an image containing the running environment and libraries, and can explore classes, change methods, test behavior, and debug within that image. It is suited to learning and building Smalltalk software with a direct feedback loop, rather than to editing source files in a conventional project-only IDE.
Start with an image, not an empty project folder
The official download page recommends Pharo Launcher to obtain a core image and the virtual machine that runs it. After opening an image, a learner can explore Smalltalk expressions and methods, then change a method and see the result in the live environment. Pharo's official learning page links introductory material on selecting expressions, creating classes, adding tests, and saving code with Iceberg. The environment's debugger can step through execution, restart a method, and create methods while investigating behavior, so a small experiment can move directly from code to inspection and correction.
This image-centered workflow is the product's defining difference. Developers who expect every task to begin and end as plain files in a conventional project tree will need to learn the Smalltalk image and object model.
The official Pharo repository's license file identifies MIT licensing with some Apache-licensed parts and other notices for bundled third-party material. The website lists downloads for Windows, macOS, and GNU/Linux. Check the relevant component notices when redistributing a bundle rather than treating every included asset as having one license.
Strengths
- The live environment supports immediate feedback while developing, testing, and debugging Smalltalk code.
- The debugger can step through execution, restart methods, and create methods during investigation.
- Pharo Launcher downloads a core image together with the matching virtual machine for Windows, macOS, and Linux.
Watch out for
- The image-based Smalltalk workflow differs from a conventional file-first IDE and takes time to learn if a team has not used Smalltalk.
Best for
- Learning object-oriented programming through live Smalltalk experiments
- Exploring, testing, and debugging applications inside a persistent Pharo image
- Researchers and developers who want to build or extend software in the Smalltalk environment
Sources
- Pharo - Welcome to Pharo! (Oct 26, 2026)
- Pharo - Documentation (Oct 26, 2026)
- Pharo - Download (Oct 26, 2026)
- GitHub - pharo-project/pharo: Pharo is a dynamic reflective pure object-oriented language supporting live programming inspired by Smalltalk. (Oct 26, 2026)
- LICENSE (Oct 26, 2026)
