Welcome!

I am a professional software engineer, specializing in using functional programming techniques to solve real-world problems with a high-level of assurance and extensibility by applying techniques like property-based testing and the use of domain-specific languages. I also have a strong background in theoretical computer science and mathematics, and my research interests include category theory, and programming language theory.

During my time in academia, I wrote a thesis on the topic of graded category theory, as well as writing some papers on other topics.

On this page you can find a list of some of my current projects, as well as my blog.

Current Projects

I am currently working on Bedelibry, which is a suite of tools for knowledge representation and note-taking. Bedelibry is built on top of Meriv (formerly known as Bedelibry Prolog), a statically typed functional/logic programming that is used to define the schemas, facts, and queries that power Bedelibry, as well as Montague -- a Haskell library for parsing natual language expressions into a structured form amenable to Meriv queries (Checkout the demo here!).

I also enjoy building various experimental frameworks for UI development, the most prominent of which is Iodine, which is based off of some of the insights I've had working as a professional Android developer, as well as being inspired by various UI frameworks in the Haskell, Purescript, and Rust communities.

I occasionally also work on some projects related to microtonal music. Hsfret is a cgi interface for generating svg fret diagrams for microtonal fretted string instruments, and xen-toolbox is a framework for programmatically generating microtonal music in Haskell.

All of this and more can be found on my github homepage.

Interests

I spend most of my time thinking about how to improve and simplify writing code using novel techniques from functional programming and category theory. I want to democratize software development, and unleash the true potential of the medium for anyone willing to learn. I hope my work and research will help to bring about what Paul Chiusano calls "the death of apps", and allow everyday users to accomplish their own personal, research, and organizational goals on their own terms, rather than being tied in to the closed off boxes that the walled-off and "black-box" environments that traditional apps provide.

I am also interested in applied category theory, and the similar explanatory and unifying power that it could have on a number of different disciplines.

Contact information

e-mail: nbedell@tulane.edu