John Perry's Projects
Ada WASM Runtime and Bindings for Web API
An interactive graphing calculator for HTML web pages.
2018 Advent of Code in Ada
Advent of Code 2019 in Ada
Advent of Code 2020
2023 Advent of Code in Ada
Tool for safe ergonomic Rust/C++ interop driven from existing C++ headers
Android app for a Chinese Remainder Clock
collection of example documents for use within cocalc's library
Naive performance comparison of a few programming languages (JavaScript, Kotlin, Rust, Swift, Nim, Python, Go, Haskell, D, C++, Java, C#, Object Pascal, Ada, Modula-2)
Kotlin implementation of Droid Nim for Android, inspired by Leo Christopherson's 1977 Android Nim, though not nearly as cutting edge.
Testbed for exploring dynamic algorithms to compute a Groebner basis
A one-person game that visualizes Buchberger's algorithm to find the reduced Gröbner basis of a set of binomials over ℤ₂[𝑥,𝑦]
An implementation of Groebner Nim in Kotlin/JS.
HAC Ada Compiler: an experimental Ada compiler, fully in Ada
source files for Ideal nim Android app
profile README
An Ada library to read a json-formated database of quotations
A textbook that uses the Sage computer algebra system to introduce students to the use of computer technology in mathematical problem solving.
Rust mid-level IR Abstract Interpreter
Some projects I tried back when I was experimenting with Modula-3
Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).
An implementation of the PL/0 compiler in the Ada language
quick-n-dirty ada project to select a random quote
Performance comparison of various compilers