12 projects
pyproject-doctor
Offline deep validator for pyproject.toml: file existence, URL and email format, PEP 440 version and PEP 508 specifier validity, version-constraint satisfiability, and entry-point format.
lyndon-words
Lyndon words, Duval factorization, necklace and bracelet enumeration, and De Bruijn sequences in pure Python.
bpred
Pure-Python simulator of classical CPU branch predictors: bimodal, gshare, and tournament
scoreboarding
Pure-Python cycle-exact simulator of Thornton's Scoreboarding (CDC 6600) in-order dynamic scheduling, with structural, WAR, and WAW hazard detection and per-instruction traces for computer architecture education.
euclidean-rhythm
Euclidean rhythms (Bjorklund) with Toussaint evenness, Keith syncopation, and Pressing rhythmic oddity, in pure Python.
spikegen
Generate spike trains (Poisson, gamma renewal, regular, Bernoulli, inhomogeneous) in pure Python with zero dependencies.
tomasulo
Pure-Python simulator of Tomasulo's out-of-order instruction scheduling: reservation stations, common data bus, and register renaming, with cycle-by-cycle traces for computer architecture education.
lawcheck
Property-based algebraic law testing for Python: Hypothesis-driven law suites for semigroups, monoids, functors, applicatives, and monads, with a pluggable equality oracle.
spikestats
Spike-train statistics (firing rate, CV, CV2, Fano factor, local variation Lv and LvR, PSTH, time-resolved rate and Fano) in pure Python with zero dependencies.
spikedist
Spike-train distance and similarity metrics (Victor-Purpura, van Rossum, multi-unit van Rossum, Schreiber, Hunter-Milton, ISI-distance, SPIKE-distance) in pure Python with zero dependencies.
pinlint
Static linter that checks a requirements file is fully version-pinned and hash-pinned, for CI and pre-commit.
lrsched
Framework-agnostic learning-rate schedules as pure functions, in Python with zero dependencies.