summaryrefslogtreecommitdiff
path: root/_pastebins/2021-06-08-debit-reading-session-sicp-solutions-pt-1.md
diff options
context:
space:
mode:
Diffstat (limited to '_pastebins/2021-06-08-debit-reading-session-sicp-solutions-pt-1.md')
-rw-r--r--_pastebins/2021-06-08-debit-reading-session-sicp-solutions-pt-1.md77
1 files changed, 0 insertions, 77 deletions
diff --git a/_pastebins/2021-06-08-debit-reading-session-sicp-solutions-pt-1.md b/_pastebins/2021-06-08-debit-reading-session-sicp-solutions-pt-1.md
deleted file mode 100644
index b97ef08..0000000
--- a/_pastebins/2021-06-08-debit-reading-session-sicp-solutions-pt-1.md
+++ /dev/null
@@ -1,77 +0,0 @@
----
-
-title: Debit Reading Session - SICP solutions pt.1
-
-date: 2021-06-08
-
-layout: post
-
-lang: en
-
-ref: debit-reading-session-sicp-solutions-pt-1
-
----
-
-```scheme
-;; 1.41
-(define (double f)
- (lambda (x)
- (f (f x))))
-
-
-:;; 1.42
-(define (compose f g)
- (lambda (x)
- (f (g x))))
-
-
-;;; 1.43
-(define (repeated f n)
- (if (= 1 n)
- identity
- (comp (repeated f (dec n)))))
-
-
-;;; 2.27
-(define (map-tree node-fn leaf-fn tree)
- (cond
- ((null? tree) tree)
- ((not (pair? tree)) (leaf-fn tree))
- (else
- (node-fn
- (cons (map-tree node-fn leaf-fn (car tree))
- (map-tree node-fn leaf-fn (cdr tree)))))))
-
-(define (map-nodes f tree)
- (map-tree f identity tree))
-
-(define (deep-reverse x)
- (map-nodes reverse x))
-
-
-;;; 2.28
-(define (flatten tree)
- (define (rec acc t)
- (cond
- ((null? t) acc)
- ((not (pair? t)) (cons t acc))
- (else
- (rec (rec (cdr t) acc)
- (car t)))))
- (rec nil tree))
-
-
-;;; 2.30
-(define (square-tree tree)
- (map-leaves square tree))
-
-
-;;; 2.31
-(define square-tree map-leaves) ; ha!
-
-
-;;; 2.32
-TODO
-```
-
-FYI: I just typed those in, I didn't yet test them yet.