/pharo

The sources for Pharo

Primary LanguageSmalltalkMIT LicenseMIT

Pharo

This repository contains sources of the Pharo language. Pharo is a pure object-oriented programming language and a powerful environment, focused on simplicity and immediate feedback (think IDE and OS rolled into one).

Pharo 6 screenshot

Download Pharo

To download the Pharo stable version for your platform, please visit:

Virtual machine

This repository contains only sources of the Pharo image. The virtual machine is served by a separate repository:

Automated Builds

This repository is being built on a Jenkins server and uploaded to files.pharo.org.

The minimal image contains the basic Pharo packages without the graphical user interface. It is useful as a base for server-side applications deployment.

Bootstrapping Pharo from sources

To bootstrap a new Pharo image you need the latest stable version of Pharo. For more information about bootstrapping, refer to guillep/PharoBootstrap.

The bootstrapping can be done using the following script:

BUILD_NUMBER=42 BOOTSTRAP_ARCH=32 sh ./bootstrap/scripts/bootstrap.sh

This will generate a very minimal image file named bootstrap.image in directory bootstrap-cache. To load the rest of Pharo environment you should afterwards execute:

sh ./bootstrap/scripts/build.sh

Tip: You can set BOOTSTRAP_REPOSITORY and BOOTSTRAP_CACHE environment variables to do the bootstrap outside of the source repository.

File format

This source code repository is exported in Tonel format. In this format, packages are represented as directories and each class is inside a single file.

How to contribute

Pharo is an opensource project very friendly to contributions of the users. See the document CONTRIBUTING how you can help to improve Pharo.