(define bmitc me)
My education is in mathematics with a smattering of physics and electrical engineering. In my career as a software engineer, I have spent all of my time either using a visual programming language or a functional programming language and sometimes both. Most of my work has interacted with hardware or science in some form or fashion, and I like that. The tools I have used are often viewed as strange and are admittedly uncommon, but surprisingly, they have almost always been the right tool.
type Human = struct end
type Me = Me of Human * seed: int64
Me(Human(), -3581020800L)
|> Knowledge.add ["mathematics"; "physics"; "electrical engineering"]
|> ProgrammingLanguage.add ["LabVIEW"; "F#"; "Racket"; "Elixir"; "Scheme"; "Pure Data"; "CSound"; "VHDL"]
|> ProgrammingParadigm.add ["functional-first"; "visual"]
|> Interest.add ["systems"; "design"; "art"; "thinking"; "FPGA"; "orcas"; "black holes"]
|> Status.add "thinking about thinking"
|> Wonder.direction "the fuzzier stuff in life"
-
[link] Python implementation of the ray tracer in the book The Ray Tracer Challenge. This is in work but is meant to showcase professional Python experience, coding style, and organization.
-
[link] F# implementation of the ray tracer in the book The Ray Tracer Challenge
-
[link] Sugarscape: agent-based simulations in Elixir and Livebook from the book Growing Artifical Societies
-
Private, in work repository of cross-platform windowing and GUI in F#
NET.Windowing.in.F.-.Imgur.mp4
-
L-systems in F# from the book The Algorithmic Beauty of Plants
-
Nand to Tetris / Elements of Computing Systems implementations in F#
- Includes assembler, virtual machine (in progress), and CPU simulator (in progress) all written in F# in addition to HDL solutions and the beginnings of VHDL implementations of the Hack CPU.
-
Simple blockchain implementation in Elixir from Introducing Blockchain with Lisp
-
Full Elixir impelementation of the code in Functional Web Development with Elixir, OTP, and Phoenix
-
[Private, work in progress] Elixir library to allowing interfacing between Elixir and F# using an Elixir
Port
and F#'sMailboxProcessor
- Effectively turns an F#
MailboxProcessor
into an ElixirGenServer
, using an ElixirPort
(not a NIF) - Define messages in Elixir with automatic F# message generation and marshalling back and forth
- Developed an F# library that implements encoding and decoding of the Erlang External Term Format
- Effectively turns an F#
-
[Private, work in progress] A home operating and automation system built with Elixir
-
LabVIEW implementaiton of a forward-mode automatic differentiation library
-
[Finished but yet to be published] Finite-state machine actor compatible with the LabVIEW Actor Framework
-
Implementation of
async/await
and an actor framework in MIT/GNU Scheme. This was completed as an end-of-semester project for the MIT 6.945 Large-scale Symbolic Systems course with Gerald Sussman. -
Notes and implementations from Racket School 2019 for the "How to Design Languages" track
-
Standard ML (SML) and Racket solutions for the Course course Programming Languages by Dan Grossman
-
Racket annotations and implementations for The Little Schemer
-
Beginnings of a Racket implementation for The Ray Tracer Challenge