Namespace declarations can be complicated. They manage all of the dependencies of one namespace on another. There are a lot of options. In this course, we go over how to make best use of them.
Screencasts, Whiteboards, and Slides produced to help you learn
This course teaches the mindset, practices, and tools of Repl-Driven Development as practiced in Clojure.
Curated selections of courses on a specific topic
Clojure can be an excellent language to learn programming. The following courses should set you on a good path for getting up to speed in Clojure. Be sure to click those checkmarks to track your progress. Start with the best introduction to Clojure out there. It gently guides you through the language with fun exercises. […]
If you’re coming to Clojure from an Object-Oriented Programming background, this page is for you. Be sure to click those checkmarks to track your progress. Start with the best introduction to Clojure out there. It gently guides you through the language with fun exercises. You’ll learn the syntax and the thought processes behind Clojure programming. […]
If you’re looking to watch absolutely all of the courses on this site, I’ve put together a suggested order. Start at the beginning and just watch everything straight through. Be sure to click those checkmarks to track your progress.
Parts of courses on specific topics
This lesson shows an in-depth example of repl-driven development. We start a new project to parse and analyze an unknown CSV file. By taking small steps at the REPL, we develop a program to parse the CSV. We test each step at the repl before moving on, and interactively expand the program. At the end, we have a program to parse it, and we have tested everything carefully along the way.
The `ns` form is for declaring namespaces in files. However, `ns` forms aren’t appropriate for the REPL. This lesson talks about the very few things I use to load namespaces and change namespaces when I’m in the REPL.
Repl-Driven Development is a set of tools and practices for programming that emphasize fast and rich feedback. The term is used interchangeably with *interactive programming*.