# marcobambini/gravity

Gravity Programming Language

Repository: https://github.com/marcobambini/gravity
Canonical: https://ross.abutalabs.com/products/gravity
Homepage: https://gravity-lang.org
Language: C
License: MIT
License Family: permissive
Topics: virtual-machine, interpreter, json, programming-language, scripting-language, bytecode, pratt-parser, c, objective-c, object-oriented, bridge, fibers, language, closure, portable, gravity
Last push: 2026-08-05T20:28:48+00:00

## Health v2 (maintenance only)
Score: 93/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 96, release rhythm 84, longevity 100
- inputs: {"age_days": 3477, "days_push": 28, "days_rel": 28, "gap_med": 39.5, "n_releases_24m": 5}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4560, forks 239 (observed 2026-08-28T04:08:53.436786+00:00)

## What it is
Gravity is a lightweight, dynamically typed, class-based scripting language written in portable C99 with no external dependencies, featuring a multipass compiler and a compact virtual machine. It is designed to be embedded in applications (notably the Creo project) and offers a Swift-like syntax with classes, closures, fibers, and a powerful bridging API.

## Use cases
- embed a scripting language in a C or Objective-C app
- write portable scripts that run on iOS and Android
- add user-extensible logic to a native application
- learn how compilers and virtual machines are implemented
- use a lightweight alternative to Lua with class-based OOP
- serialize and deserialize JSON from embedded scripts

## When to choose
- you need a tiny (<200KB) embeddable language with zero external dependencies
- you prefer Swift-like class-based syntax over Lua's prototype style
- you need coroutines, closures, and operator overriding in a scripting layer
- you want a clean C codebase to study or modify

## When to avoid
- you need a large ecosystem of third-party libraries and packages
- you need high-performance numeric computing or JIT compilation
- you need a language with strong static typing
- you require long-term commercial support or a large community

## Facets
- artifact type: cli-tool
- maturity: active
- function: interpreter, programming-language, compiler, serialization
- domain: programming-languages, developer-tools, cross-platform
- platform: cross-platform, windows, c
- tags: embeddable-language, virtual-machine, bytecode, scripting-language, swift-like-syntax, fibers, closures, pratt-parser, no-dependencies, programming-language, ios, android, linux, macos

## Member repositories
- marcobambini/gravity (main) score 93

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:53.436786+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-30T08:31:25.393978+00:00, confidence not recorded.
  - readme: https://github.com/marcobambini/gravity (fetched 2026-08-28T04:08:53.436786+00:00, sha 958d92c0c5d3)
  - homepage: https://gravity-lang.org (fetched 2026-08-29T09:05:26.768374+00:00, sha 3ac96522c3a8)
- Data as of 2026-08-30T08:39:29.467469+00:00.
