summaryrefslogtreecommitdiff
path: root/src/content/pastebins/2021/09
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2025-03-31 21:51:40 -0300
committerEuAndreh <eu@euandre.org>2025-03-31 21:51:40 -0300
commit570ec471d1605318aeefb030cd78682ae442235b (patch)
tree51e17eabe37c6689f8799b55e6875c3480329a2c /src/content/pastebins/2021/09
parentMakefile, mkdeps.sh: Derive index.html and feed.xml from more static "sortdat... (diff)
downloadeuandre.org-570ec471d1605318aeefb030cd78682ae442235b.tar.gz
euandre.org-570ec471d1605318aeefb030cd78682ae442235b.tar.xz
src/content/: Update all files left to asciidoc
Diffstat (limited to 'src/content/pastebins/2021/09')
-rw-r--r--src/content/pastebins/2021/09/02/sicp-3-19.adoc24
-rw-r--r--src/content/pastebins/2021/09/03/sicp-persistent-queue.adoc37
2 files changed, 21 insertions, 40 deletions
diff --git a/src/content/pastebins/2021/09/02/sicp-3-19.adoc b/src/content/pastebins/2021/09/02/sicp-3-19.adoc
index 75ee346..f6aa8cf 100644
--- a/src/content/pastebins/2021/09/02/sicp-3-19.adoc
+++ b/src/content/pastebins/2021/09/02/sicp-3-19.adoc
@@ -1,18 +1,7 @@
----
+= SICP exercise 3.19
-title: SICP exercise 3.19
-
-date: 2021-09-02
-
-layout: post
-
-lang: en
-
-ref: sicp-exercise-3-19
-
----
-
-```scheme
+[source,scheme]
+----
(define (cycle? l)
(define (rec l x)
(cond
@@ -20,11 +9,12 @@ ref: sicp-exercise-3-19
((eq? l x) true)
(true (rec l (cdr x)))))
(rec l (cdr l)))
-```
+----
Sample interactive session:
-```scheme
+[source,scheme]
+----
scheme@(guile-user)> (define true #t)
scheme@(guile-user)> (define false #f)
scheme@(guile-user)>
@@ -39,4 +29,4 @@ scheme@(guile-user)> (cycle? '(1 2 3))
$9 = #f
scheme@(guile-user)> (cycle? (make-cycle '(1 2 3)))
$10 = #t
-```
+----
diff --git a/src/content/pastebins/2021/09/03/sicp-persistent-queue.adoc b/src/content/pastebins/2021/09/03/sicp-persistent-queue.adoc
index 8cf7ea2..2b4a8a2 100644
--- a/src/content/pastebins/2021/09/03/sicp-persistent-queue.adoc
+++ b/src/content/pastebins/2021/09/03/sicp-persistent-queue.adoc
@@ -1,36 +1,25 @@
----
+= SICP persistent amortized O(1) queue
-title: SICP persistent amortized O(1) queue
-
-date: 2021-09-03
-
-layout: post
-
-lang: en
-
-ref: sicp-persistent-amortized-o1-queue
-
----
-
-```scheme
+[source,scheme]
+----
(define (queue)
(cons '()
- '()))
+ '()))
(define (enqueue x q)
(cons (car q)
- (cons x (cdr q))))
+ (cons x (cdr q))))
(define (flush q)
(cons (reverse (cdr q))
- '()))
+ '()))
(define (dequeue q)
(if (null? (car q))
(dequeue (flush q))
(cons (caar q)
- (cons (cdar q)
- (cdr q)))))
+ (cons (cdar q)
+ (cdr q)))))
(define (empty? q)
(and (null? (car q))
@@ -43,7 +32,7 @@ ref: sicp-persistent-amortized-o1-queue
(define (rec l leading-space?)
(when (not (null? l))
(when leading-space?
- (display " "))
+ (display " "))
(display (car l))
(rec (cdr l) #t)))
@@ -52,10 +41,12 @@ ref: sicp-persistent-amortized-o1-queue
(rec (reverse (cdr q)) (not (null? (car q))))
(display ")")
(newline))
-```
+----
Sample interactive session:
-```scheme
+
+[source,scheme]
+----
scheme@(guile-user)> (define true #t)
scheme@(guile-user)> (define false #f)
scheme@(guile-user)> (define q (queue))
@@ -82,4 +73,4 @@ scheme@(guile-user)> (print-queue q)
#q(b c d e)
scheme@(guile-user)> (print-queue (cdr (dequeue (cdr (dequeue (enqueue 'g (enqueue 'f q)))))))
#q(d e f g)
-```
+----