work transfer to laptop
This commit is contained in:
+10
-10
@@ -28,12 +28,12 @@
|
||||
(define key-not-found-index -1)
|
||||
|
||||
(define (make-alist)
|
||||
(set-type
|
||||
(set-type!
|
||||
'(())
|
||||
:alist))
|
||||
|
||||
(define (make-plist)
|
||||
(set-type
|
||||
(set-type!
|
||||
'(())
|
||||
:plist))
|
||||
|
||||
@@ -41,9 +41,9 @@
|
||||
(let ((associations (first alist)))
|
||||
(define (pprint-intern associations)
|
||||
(when associations
|
||||
(printf " "
|
||||
(caar associations) "->"
|
||||
(cdar associations))
|
||||
(print " "
|
||||
(caar associations) "->"
|
||||
(cdar associations))
|
||||
(pprint-intern (rest associations))))
|
||||
(print "(")
|
||||
(when associations
|
||||
@@ -55,9 +55,9 @@
|
||||
(let ((props (first plist)))
|
||||
(define (pprint-intern props)
|
||||
(when props
|
||||
(printf " "
|
||||
(car props) "->"
|
||||
(cadr props))
|
||||
(print " "
|
||||
(car props) "->"
|
||||
(cadr props))
|
||||
(pprint-intern (cddr props))))
|
||||
(print "(")
|
||||
(when props
|
||||
@@ -113,7 +113,7 @@
|
||||
|
||||
|
||||
(define (alist-set! alist key value)
|
||||
(mutate alist (set-type (pair (pair (pair key value)
|
||||
(mutate alist (set-type! (pair (pair (pair key value)
|
||||
(car alist))
|
||||
())
|
||||
:alist)))
|
||||
@@ -142,7 +142,7 @@
|
||||
(plist-get-intern props prop)))
|
||||
|
||||
(define (plist-set! plist prop value)
|
||||
(mutate plist (set-type (pair (pair prop (pair value (first plist))) ())
|
||||
(mutate plist (set-type! (pair (pair prop (pair value (first plist))) ())
|
||||
:plist)))
|
||||
|
||||
(define (plist-set-overwrite! plist prop value)
|
||||
|
||||
Reference in New Issue
Block a user