Elena Machkasova
University of Minnesota, Morris
@elenam_clj
Elena Machkasova has been teaching Computer Science at University of Minnesota, Morris for 15 years. Functional languages, including Clojure and Racket, play a large role in her courses. Her goal is to be able to use Clojure as the very first language that beginner programmers learn. She has actively participated in various Clojure events: Clojure meetups, Clojure/conj, Clojure/west, and ClojureBridge.
Babel: middleware for beginner-friendly error messages
Programmers who are just learning their first programming languages find Clojure hard to approach. One of the reasons is that Clojure error messages require understanding Java classes and other terminology that beginners don’t have background in. We present nREPL middleware called “babel” that intercepts Clojure error messages and replaces them with more beginner-accessible phrasing. In addition the system provides specs for clojure core functions that allow pinpointing a failing argument. The project has been ongoing at UMN Morris for a few years, with the initial idea presented at Clojure/west in 2015, but addition of spec to Clojure allowed us to provide self-containing middleware.
Additional Speakers
Charlot Shaw is a University of Minnesota Morris student, programmer, writer, actor, martial artist, juggler, and a good many other things besides. An honors student and a McNair scholar majoring in Computer Science, minoring in Spanish, and working with Clojure.
Ethan Uphoff is an undergraduate student in the computer science program at the University of Minnesota Morris. He has spent much of his time researching clojure spec and the rewriting of error messages.
RJ Holman is a computer science student at the University of Minnesota Morris, and a software development intern at Computer Professionals, Inc in Minnesota. Introduced to programming with a functional language, he has great interest in making Clojure approachable to beginners.