From b057018533a518fea06b637c2a80889c695a1556 Mon Sep 17 00:00:00 2001
From: Jim
Date: Sun, 1 Feb 2015 13:06:57 -0500
Subject: [PATCH 1/1] tweak week1
---
topics/week1.mdwn | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/topics/week1.mdwn b/topics/week1.mdwn
index 7f717d9a..ee5478c2 100644
--- a/topics/week1.mdwn
+++ b/topics/week1.mdwn
@@ -627,15 +627,16 @@ Here is the hierarcy of **values** that we've talked about so far.
* Functions: these are not literals, but instead have to be generated by evaluating complex expressions
* Containers, including:
* the **literal containers** `[]` and `{}`
- * Non-empty sequences
- * Non-empty sets
+ * Non-empty sequences, built using `&`
+ * Non-empty sets, built using `&`
* Tuples proper and other containers, to be introduced later
We've also talked about a variety of **expressions** in our language, that evaluate down to various values (if their evaluation doesn't "crash" or otherwise go awry). These include:
* All of the literal atoms and literal containers
* Variables
-* Various complex expressions, built using `&` or λ or `let` or `letrec` or `case`
+* Complex expressions that apply `&` or some variable understood to be bound to a function to some arguments
+* Various other complex expressions involving λ or `let` or `letrec` or `case`
The special syntaxes `[10, 20, 30]` are just shorthand for the more offical syntax using `&` and `[]`, and likewise for `{10, 20, 30}`. The `if ... then ... else ...` syntax is just shorthand for a `case`-construction using the literal patterns `'true` and `'false`.
--
2.11.0