• Skip to main content
  • Skip to footer

PurelyFunctional.tv

  • Learn Clojure
  • About
  • 🛒 Cart
  • Log in
Download
 Video time: 01m35s
PREVIOUS
NEXT

Want this course?

Buy for $48

Introducing X5 and JC

Course: Introduction to Clojure v2

Updated June 27, 2018

Description
Notes
Code

We introduce X5, who wants to be a baker. He's going to baking school. JC is his baking instructor. We'll be helping X5 learn, by using Clojure.

Introducing X5 and JC

X5 is a robot who has always wanted to learn how to bake. He is going to baking school and we're going to teach him how to bake cakes and cookies, how to manage a day's orders, and how to store recipes throughout this course.

X5

JC is his baking instructor at the school. She'll be giving him assignments to learn to bake.

JC

In this first day at baking school, X5 will learn to use ingredients to bake cakes and cookies. He comes built-in with basic movement commands like grab, squeeze, and mix. We'll be taking those built-in commands and making new ones that are more oriented around baking.

Code is available: lispcast/introduction-to-clojure

You can checkout the code in your local repo with this command:

$CMD git clone https://github.com/lispcast/introduction-to-clojure.git 
$CMD cd introduction-to-clojure        

Next Lesson

14 min Free

Working with the REPL

We start off our journey by baking some cookies and a cake. We learn how to use each ingredient and how to follow recipes.

Course: Introduction to Clojure v2

0 / 60
0 / 60
 
Lessons
 
Introduction
free  
12 min 
 
Introducing X5 and JC
free  
2 min 
 
Working with the REPL
free  
14 min 
 
Defining functions
 
7 min 
 
Defining a bake-cake function
 
2 min 
 
Conditionals
 
10 min 
 
Defining scooped?
 
2 min 
 
Defining squeezed?
 
3 min 
 
Defining simple?
 
1 min 
 
Defining ingredient types
 
11 min 
 
Looping a number of times
 
10 min 
 
Using the plural functions
 
2 min 
 
Variadic functions
 
15 min 
 
Baking with variadic functions
 
2 min 
 
Bake cookies function
 
2 min 
 
Day 1 Conclusion
 
2 min 
 
Running Leiningen projects
 
11 min 
 
Error function
 
11 min 
 
Refactoring errors
 
4 min 
 
Bakery locations
 
14 min 
 
Scooped?, squeezed?, and simple? refactor
 
2 min 
 
Fetching ingredients
 
9 min 
 
Fetch ingredients generic
 
3 min 
 
Maps
 
7 min 
 
Fetching a shopping list
 
10 min 
 
Refactoring fetch-list
 
10 min 
 
Refactoring locations
 
9 min 
 
A day at the bakery
 
20 min 
 
Analyzing a day at the bakery
 
3 min 
 
Functional programming
 
10 min 
 
Into
 
6 min 
 
multiply-ingredients
 
7 min 
 
order to ingredients
 
5 min 
 
orders to ingredients
 
7 min 
 
Making one shopping trip
 
3 min 
 
Making one delivery
 
12 min 
 
Day 2 conclusion
 
3 min 
 
Day 3
 
2 min 
 
Add cocoa
 
2 min 
 
Baking brownies
 
6 min 
 
Analyzing recipes
 
6 min 
 
Starting the database
 
2 min 
 
Perform
 
1 min 
 
Mix step
 
1 min 
 
Pouring and baking
 
1 min 
 
Adding ingredients
 
7 min 
 
Bake recipe
 
4 min 
 
Generic bake function
 
3 min 
 
Adding all recipes
 
5 min 
 
Cleaning up order to ingredients
 
6 min 
 
Ingredients in the database
 
3 min 
 
Refactoring scooped, squeezed, and simple
 
2 min 
 
Generic fetch ingredient
 
9 min 
 
Refactoring fetch-list (again)
 
10 min 
 
Make storage-location more useful
 
4 min 
 
Redefining add
 
9 min 
 
Defining actions
 
4 min 
 
Refactoring perform
 
4 min 
 
Conclusions
 
5 min 
 
Appendix: Creating a Leiningen project
 
10 min 

Footer CTA

Level up your Clojure skills

The PurelyFunctional.tv Newsletter is a weekly email that helps you improve your Clojure skills through challenges, tips, and news.

Enter your email address to receive emails about Clojure and Functional Programming. These include the weekly newsletter and occasional offers. You can unsubscribe any time.

Copyright © 2021 LispCast and Eric Normand