Hi! I'm a CS and Math student currently studying at Willamette University.
I am interested in many things, including:
- Open-Source Software
- Cryptography
- Operating Systems
- Compilers, Interpreters, and Language Design
- Ternary Virtual Machines
- Formal Methods
- Ternary Virtual Machine (JX_01)
- v1
- A virtual machine which operates on a virtual machine code made up of ternary Trits, utilizing balanced ternary as the intrinsic system of ternary.
- Old version contains a Harvard architecture stack-based simple virtual machine (a proof of concept), and a simple 2-pass assembler.
- v2 contains work on a von Neumann architecture virtual machine, and:
- Access to 27 (3^3) ternary registers
- 3^27 Trits (3 Trytes) identity mapped memory
- Custom Arm-inspired RISC assembly instruction set assembler (datasheet in progress)
- v3 Full Ternary System with:
- Interrupts
- Vector Graphics
- 3^27 trytes of memory
- Same capability as modern computers.
- Load/Store Architecture
- v4 Link
- Coming Soon. With momentum. Expected to outdo the previous ones by a lot.
- Much improved,
no_stdandconstcompatible balanced ternary arithmetic. - Will come with an assembler, compiler, and linker at some point.
- v1
- Ternary Huffman Compression
- Implemented a ternary huffman tree.
- On a ternary system, naive huffman compression is more efficient than binary.
- This would not be true for simulated ternary systems, but would be true for a true ternary system.
- JISCV
- Beginning of a RISC-V operating system in Rust.
- Experimental, to learn about OS's, filesystems, IPC, RISC-V, etc.
- 4D Rotating Hypercube
- 3D Terminal Renderer, which can display and rotate any 3D object comprised of straight lines
- 4D Rendering capabilities, the 4D object is projected into 3D using weak perspective projection, just like 3D is projected onto the 2D screen
- A little old, the math and code could really use an update. Still, can't argue with the result.
- Crust
- Compiler for a C-like language with Rust style Algebraic Type System
- Utilized inkwell (Rust llvm bindings)
- LaTeX Interpreter
- A turing-complete programming language with syntax inspired by LaTeX.
- A kind of sequel to my compiler, this is a fully interpreted language, intended to be embedded into the JimTeX IDE.
- Nearly fully functional (functions can be passed as functions to functions, but not returned, mutability is handled with reassignment)
- Examples are in the jimtex_interpreter library as tests, run with
$ cargo test -- --nocaptureto view console output.
- Encryption
- Contains 3 parts:
- src, which contains a custom polynomial xor based masking algorithm
- primes_lib/src, which contains an implementation of the RSA algorithm in Rust
- LWE implementation (post-quantum Cryptography) w/ custom Linear Algebra Library written specifically for constant-sized matrices
- Contains 3 parts:
- Turing Machine
- An implementation of a turing machine in Rust
- Allows for saving states of the tape, as well as programatically constructing them
- Star Trek Episode Picker
- Recreation of my very first CS project. Originally written in Java, I used Rust this time, acnd compiled it to WASM.
- It's available here
I have worked professionally with:
I am proficient in:
I am interested in:


