# jserv/amacc

Small C Compiler generating ELF executable Arm architecture, supporting JIT execution

Repository: https://github.com/jserv/amacc
Canonical: https://ross.abutalabs.com/products/amacc
Language: C
License: NOASSERTION
License Family: other
Topics: compiler, c, arm, armv7a, jit-compiler, linux, dynamic-linking, self-hosting
Last push: 2025-08-05T09:19:20+00:00

## Health v2 (maintenance only)
Score: 48/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 35, release rhythm 35, longevity 100
- inputs: {"age_days": 3866, "days_push": 393, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1060, forks 162 (observed 2026-08-28T04:03:25.793879+00:00)

## What it is
AMaCC is a small, from-scratch C compiler targeting 32-bit Arm (armv7hf) that can execute code via a JIT compiler or generate ELF executables for GNU/Linux. It supports a C89 subset sufficient for self-hosting and is designed as a pedagogical tool for learning compilers, linkers, and loaders.

## Use cases
- learn how compilers, linkers, and loaders work
- compile a subset of C on a Raspberry Pi
- study JIT compiler implementation for Arm
- generate ELF executables from C source
- explore self-hosting compiler design
- teach compiler construction with a minimal codebase

## When to choose
- you want a tiny, readable compiler codebase for education
- you target 32-bit Arm Linux on Raspberry Pi
- you need a self-hosting C compiler example with JIT and ELF modes

## When to avoid
- you need full C89/C99 compliance or production-grade optimization
- you target x86, 64-bit Arm, or non-Linux platforms
- you need struct assignment, typedef, or type qualifiers

## Facets
- artifact type: library
- maturity: active
- function: compiler, interpreter, parser, developer-tools
- domain: compilers, programming-languages, education, embedded-systems
- platform: cpp, cli
- tags: c-compiler, jit-compilation, elf-generation, self-hosting, arm32, pedagogical, raspberry-pi, linux, arm

## Member repositories
- jserv/amacc (main) score 48

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:25.793879+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-30T06:56:57.336210+00:00, confidence not recorded.
  - readme: https://github.com/jserv/amacc (fetched 2026-08-28T04:03:25.793879+00:00, sha 596a94895d51)
- Data as of 2026-08-30T08:39:29.467469+00:00.
