Blog

A series of blog posts about the Clojure programming language.
This was written for my First Year Writing course. It teaches the basics of Lisp programming in general, through the Clojure language. Specifically, the first post introduces readers by explaining the origins of Lisp, why it is still used and innovated on today, and how to use it at a basic level. The second post actually teaches the basics of Clojure, including its most important syntax, semantics, and useful features. It contrasts Clojure to mainsteram languages to show how solutions written in the language can be clearer and more concise. Finally, the last post delves into Clojure's metaprogramming features -- the ability to write code that transforms into different code. It explains why this is so useful, how Lisp programmers often use it without realizing, and how to intentionally do it yourself.
I deeply enjoyed working on this project. It allowed me to reflect on what I had learned about Lisp and Clojure in the year before I worked on the blog. Furthermore, I had to make decisions about what are the most essential features of Lisp and Clojure to explain to people unfamiliar with it. Perhaps more important was figuring out how to frame this in an approachable and exciting way; Lisp often gets a bad rap for being quite different from mainstream programming languages so I would need to override any preexisting biases.
Overall this was a valuable project for me and I hope you enjoy reading it if you so choose, and become a fellow Clojure zealot if so.


You can find my blog right here on this website.