# kanaka/mal

mal - Make a Lisp

Repository: https://github.com/kanaka/mal
Canonical: https://ross.abutalabs.com/products/mal
Language: Assembly
License: NOASSERTION
License Family: other
Topics: mal, docker, lisp, lisp-interpreter, c, java, javascript, python, c-plus-plus, c-sharp, php, ruby, r, swift, bash, makefile, clojure, scala, learn-to-code, webassembly
Last push: 2025-10-22T16:42:57+00:00

## Health v2 (maintenance only)
Score: 44/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 48, release rhythm 8, longevity 100
- inputs: {"age_days": 4545, "days_push": 315, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- 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 10721, forks 2702 (observed 2026-08-28T04:10:43.847180+00:00)

## What it is
Mal (Make a Lisp) is a Clojure-inspired Lisp interpreter implemented in 89 languages, structured as 11 incremental self-contained steps for learning how Lisps work. It serves primarily as an educational tool, with a step-by-step process guide culminating in a self-hosting implementation.

## Use cases
- learn how to implement a Lisp interpreter
- understand interpreter concepts like macros and tail-call optimization step by step
- practice a programming language by porting mal to it
- study self-hosting interpreters
- follow a guided make-a-lisp tutorial with testable steps

## When to choose
- you want a structured, hands-on guide to building a Lisp from scratch
- you want to learn a new language by implementing the same small interpreter in it
- you want a small Clojure-inspired Lisp to experiment with

## When to avoid
- you need a production-ready Lisp for real applications
- you want a batteries-included Clojure-compatible runtime
- you need performance or a rich standard library

## Facets
- artifact type: learning-resource
- maturity: active
- function: interpreter, programming-language, developer-tools
- domain: programming-languages, education, tutorials, parsers
- platform: cross-platform, cli, wasm
- tags: lisp, clojure-inspired, learn-to-code, self-hosting, multi-language-implementations, repl, docker

## Member repositories
- kanaka/mal (main) score 44

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:10:43.847180+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-29T17:17:56.787060+00:00, confidence not recorded.
  - readme: https://github.com/kanaka/mal (fetched 2026-08-28T04:10:43.847180+00:00, sha b97915596b8c)
- Data as of 2026-08-30T08:39:29.467469+00:00.
