back to home

pharo-project / pharo

Pharo is a dynamic reflective pure object-oriented language supporting live programming inspired by Smalltalk.

1,432 stars
415 forks
1,450 issues
SmalltalkShell

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing pharo-project/pharo in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Source files are only loaded when you start an analysis to optimize performance.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind.in/repo/pharo-project/pharo)
Preview:Analyzed by RepoMind

Repository Overview (README excerpt)

Crawler view

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). Visit us on https://www.pharo.org or Pharo Discord Server Download Pharo To download the Pharo stable version for your platform, please visit: • http://pharo.org/download Virtual machine This repository contains only sources of the Pharo image. The virtual machine source code is managed in a separate repository: • https://github.com/pharo-project/pharo-vm/ Automated Builds This repository is being built on a Jenkins server and uploaded to files.pharo.org. • Latest build - 64bit • Latest build - 32bit The minimal image contains the basic Pharo packages without the graphical user interface. It is useful as a base for server-side applications deployment. • Minimal image latest build - 64bit • Minimal image latest build - 32bit 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 on a properly-named branch using the following script: This will generate and archive images at various stages of the bootstrap process up to the full image in where hhhhhhh is the hash of the current checkout. Additional information on the stages of the bootstrap and how to snapshot during the process are provided as comments in bootstrap.sh. • You can set the environment variable to a unique integer (this is typically used only for the official builds and will default to if not specified). • You can set the environment variable to either (the default) or . • You can set the and environment variables to do the bootstrap outside of the source repository. • You can set the environment variable to make the bootstrap use a virtual machine already present in your system (otherwise it will download it). • If you are on a branch that doesn't follow the expected naming convention (' '), then the script will pick an appropriate default (such as ). To build Pharo12.0 from a custom branch, you need to set before the bootstrap script is run. Bootstrapping with Docker You can also use Docker if you prefer to control the bootstrapping environment completely. The following provides a Docker image with a fresh build. You can repeat the command in a container at any time: Alternatively, in the root directory of this project (after a ), you can set up a Docker volume pointing to the project directory and build from within the Docker container (nice for Windows environments!): 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 open source project very friendly to contributions of the users. See the document CONTRIBUTING how you can help to improve Pharo. Pharo friendly links and organizations http://github.com/Pharo-project/PharoMap Stargazers over time