# skiplang/skip

A programming language to skip the things you have already computed

Repository: https://github.com/skiplang/skip
Canonical: https://ross.abutalabs.com/products/skiplang-skip
Homepage: http://skiplang.com
Language: JavaScript
License: MIT
License Family: permissive
Last push: 2023-09-21T16:48:20+00:00

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

## Adoption (not part of the score)
Stars 2020, forks 67 (observed 2026-08-28T04:06:06.291175+00:00)

## What it is
Skip is a statically typed, ahead-of-time compiled general-purpose programming language that tracks side effects to enable safe memoization with reactive cache invalidation, safe parallelism, and predictable garbage collection. It compiles via LLVM and ships as a toolchain (compiler, runtime, and bundler) usable directly or through a Docker-based development environment.

## Use cases
- build a programming language with automatic caching of pure computations
- write parallel code without thread-safety bugs
- learn a hybrid functional/OO statically typed language
- experiment with reactive invalidation of cached data
- compile a language to optimized native executables with LLVM
- try a language with predictable garbage collection

## When to choose
- you want safe memoization driven by type-system proofs of purity
- you need ergonomic async and parallel computation without shared mutable state
- you want predictable, low-overhead GC behavior
- you are exploring novel language design around side-effect tracking

## When to avoid
- you need a production-ready language with a large ecosystem and libraries
- you want quick drop-in tooling for an existing codebase
- you require long-term support or frequent updates
- you are not prepared to use Docker or build the toolchain yourself

## Facets
- artifact type: cli-tool
- maturity: maintenance
- function: programming-language, compiler, caching, concurrency
- domain: programming-languages, compilers, performance, developer-tools
- platform: cpp
- tags: statically-typed, llvm-backend, reactive-invalidation, memoization, memory-management, garbage-collection, async-await, parallelism, linux, macos, docker, llvm

## Member repositories
- skiplang/skip (main) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:06.291175+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-30T03:00:24.626767+00:00, confidence not recorded.
  - readme: https://github.com/skiplang/skip (fetched 2026-08-28T04:06:06.291175+00:00, sha 11fb2fd99001)
  - homepage: http://skiplang.com (fetched 2026-08-29T10:40:33.830708+00:00, sha dae45f1c0280)
  - site_page: https://skiplang.com/docs/tutorial.html (fetched 2026-08-29T10:40:33.847649+00:00, sha a093b1026894)
  - site_page: https://skiplang.com/docs/hello_world.html (fetched 2026-08-29T10:40:33.849908+00:00, sha cac50bf6c3ec)
  - site_page: https://skiplang.com/docs/string.html (fetched 2026-08-29T10:40:33.851789+00:00, sha 9f97ea16a990)
  - site_page: https://skiplang.com/docs/getting_started.html (fetched 2026-08-29T10:40:33.853759+00:00, sha a472b0510669)
  - site_page: https://skiplang.com/docs/assets.html (fetched 2026-08-29T10:40:33.855498+00:00, sha 9e224857aa30)
- Data as of 2026-08-30T08:39:29.467469+00:00.
