projects
/
lambda.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
(no commit message)
[lambda.git]
/
assignment1.mdwn
diff --git
a/assignment1.mdwn
b/assignment1.mdwn
index
cb1dfd2
..
cc535c2
100644
(file)
--- a/
assignment1.mdwn
+++ b/
assignment1.mdwn
@@
-26,7
+26,8
@@
In Racket, these can be defined like this:
(define true (lambda (t) (lambda (f) t)))
(define false (lambda (t) (lambda (f) f)))
(define true (lambda (t) (lambda (f) t)))
(define false (lambda (t) (lambda (f) f)))
- [8] Define a "neg" operator that negates "true" and "false".
+ 8. Define a "neg" operator that negates "true" and "false".
+
Expected behavior:
(((neg true) 10) 20)
Expected behavior:
(((neg true) 10) 20)
@@
-37,19
+38,23
@@
evaluates to 20, and
evaluates to 10.
evaluates to 10.
- [9] Define an "and" operator.
+ 9. Define an "and" operator.
+
+ 10. Define an "xor" operator.
-
[10] Define an "xor" operator.
(If you haven't seen this term before, here's a truth table:
+(If you haven't seen this term before, here's a truth table:
-
true xor true = false
-
true xor false = true
-
false xor true = true
-
false xor false = false
+ true xor true = false
+ true xor false = true
+ false xor true = true
+ false xor false = false
)
11. Inspired by our definition of boolean values, propose a data structure
)
11. Inspired by our definition of boolean values, propose a data structure
-capable of representing one of the two values "black" or "white". If we have
+ capable of representing one of the two values "black" or "white".
+
+If we have
one of those values, call it a black-or-white-value, we should be able to
write:
one of those values, call it a black-or-white-value, we should be able to
write: