# pharo-project/pharo

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

Repository: https://github.com/pharo-project/pharo
Canonical: https://ross.abutalabs.com/products/pharo
Homepage: http://pharo.org
Language: Smalltalk
License: NOASSERTION
License Family: other
Topics: pharo, reflective, language, tools, bootstrap, object-oriented-programming, live-programming, mit
Last push: 2026-08-26T12:33:22+00:00

## Health v2 (maintenance only)
Score: 74/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 99, release rhythm 28, longevity 100
- inputs: {"age_days": 3691, "days_push": 7, "days_rel": 433, "gap_med": 33, "n_releases_24m": 2}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1482, forks 431 (observed 2026-08-28T04:04:51.102743+00:00)

## What it is
Pharo is a pure, reflective, dynamically typed object-oriented programming language in the Smalltalk tradition, shipped with an immersive live IDE and a large standard library. This repository contains the sources of the Pharo image, which is bootstrapped and run on a separate virtual machine.

## Use cases
- learn object-oriented programming with a live Smalltalk environment
- prototype applications with immediate feedback and live programming
- build server-side applications with a minimal headless Pharo image
- explore reflective metaprogramming and dynamic language internals
- teach programming courses using the free Pharo MOOC
- debug running systems by editing code on the fly

## When to choose
- you want a pure object-oriented language with everything being an object
- you value live, image-based development with an exceptional debugger
- you need an open-source (MIT) full-stack language and environment
- you are teaching or learning OOP with rich free books and MOOCs

## When to avoid
- you need a mainstream language with large hiring pools and ecosystem
- you require static typing or compile-time guarantees
- you want a conventional file-based workflow rather than image-based development
- your deployment target depends on libraries outside the Pharo ecosystem

## Facets
- artifact type: application
- maturity: active
- function: programming-language, interpreter, developer-tools
- domain: programming-languages, developer-tools, cross-platform
- platform: cross-platform, windows
- tags: smalltalk, live-programming, reflective, ide, object-oriented, image-based, dynamic-language, linux, macos

## Member repositories
- pharo-project/pharo (main) score 74

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:51.102743+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:34:08.597382+00:00, confidence not recorded.
  - readme: https://github.com/pharo-project/pharo (fetched 2026-08-28T04:04:51.102743+00:00, sha 329a65ebf20b)
  - homepage: http://pharo.org (fetched 2026-08-29T11:40:50.178892+00:00, sha 7cd60ea7beaa)
  - site_page: https://pharo.org/documentation (fetched 2026-08-29T11:40:50.183504+00:00, sha 61bab2e339d7)
  - site_page: https://pharo.org/about (fetched 2026-08-29T11:40:50.185439+00:00, sha 59fe6fcbb96d)
- Data as of 2026-08-30T08:39:29.467469+00:00.
