👋 Hello, I’m Damien

This is a loosely collected set of notes and articles on computer science and related/applicable fields of study. Many are only nominally edited and primarily for my own personal use.

Consider this quote from a [presentation][2] by Jon Sterling:

Software engineering is about division of labor

  • Between users and machines…
  • Between clients and servers…
  • Between different programmers…
  • Between different modules…

Tension lies between notions of abstraction and composition

  • Abstraction (which embodies division)
  • Composition (which embodies harmony)

PL theory is “advancing linguistic solutions to the contradiction between abstraction and composition” — Reynolds, 1983.

I am fascinated by PL theory, type theory, and the idea of the [computational trilogy][1]. These ideas are worth thinking about and worth sharing.

My independent research as a part-time graduate student sits at the intersection of:

  1. Formal modeling of autonomous systems & artificial intelligence.
  2. Distributed systems & type theory.
  3. Robotics & embedded systems.

I hope this kind of “living book” will motivate me to keep articulating, editing, and learning indefinitely.