using stdint types

This commit is contained in:
FelixBrendel
2020-03-31 11:38:53 +02:00
parent 33145be4c6
commit 76dd4d6482
52 changed files with 483 additions and 1503 deletions
+10 -10
View File
@@ -3,7 +3,7 @@
(define a (ds::alist::make))
;; a == (())
(assert (= (first a) ()))
(assert (= (car a) ()))
(ds::alist::set! a 'key1 'value1)
;; a == (key1: value1)
@@ -20,7 +20,7 @@
(assert (ds::alist::key-exists? a 'key2))
(assert (= (ds::alist::find a 'key2) 0))
(assert (= (ds::alist::find a 'key1) 1))
(assert (= (length (first a)) 2))
(assert (= (length (car a)) 2))
(ds::alist::set! a 'key1 'value3)
@@ -28,7 +28,7 @@
;; key2: value2,
;; key1: value1)
(assert (= (length (first a)) 3))
(assert (= (length (car a)) 3))
(assert (= (ds::alist::get a 'key1) 'value3))
(ds::alist::set-overwrite! a 'key1 'value4)
@@ -36,14 +36,14 @@
;; key2: value2,
;; key1: value1)
(assert (= (length (first a)) 3))
(assert (= (length (car a)) 3))
(assert (= (ds::alist::get a 'key1) 'value4))
(ds::alist::remove! a 'key1)
;; a == (key2: value2,
;; key1: value1)
(assert (= (length (first a)) 2))
(assert (= (length (car a)) 2))
(assert (= (ds::alist::get a 'key1) 'value1))
(assert (= (ds::alist::get a 'key2) 'value2))
@@ -57,7 +57,7 @@
(define p (ds::plist::make))
;; p == (())
(assert (= (first p) ()))
(assert (= (car p) ()))
(ds::plist::set! p :key1 'value1)
;; p == ((:key1 value1))
@@ -74,14 +74,14 @@
(assert (ds::plist::prop-exists? p :key2))
(assert (= (ds::plist::find p :key2) 0))
(assert (= (ds::plist::find p :key1) 1))
(assert (= (length (first p)) 4))
(assert (= (length (car p)) 4))
(ds::plist::set! p :key1 'value3)
;; p == ((:key1 value3,
;; :key2 value2,
;; :key1 value1))
(assert (= (length (first p)) 6))
(assert (= (length (car p)) 6))
(assert (= (ds::plist::get p :key1) 'value3))
(ds::plist::set-overwrite! p :key1 'value4)
@@ -89,13 +89,13 @@
;; :key2 value2,
;; :key1 value1))
;; (assert (= (length (first p)) 6))
;; (assert (= (length (car p)) 6))
;; (assert (= (ds::plist::get p :key1) 'value4))
;; (ds::plist::remove! p :key1)
;; ;; p == ((:key2 value2,
;; ;; :key1 value1))
;; (assert (= (length (first p)) 4))
;; (assert (= (length (car p)) 4))
;; (assert (= (ds::plist::get p :key1) 'value1))
;; (assert (= (ds::plist::get p :key2) 'value2))
+12 -12
View File
@@ -22,25 +22,25 @@
(set::make "q0")))
(let ((state (aut ())))
(assert (= (first state) :accept))
(assert (= (first (rest state)) "q0")))
(assert (= (car state) :accept))
(assert (= (car (cdr state)) "q0")))
(let ((state (aut "M")))
(assert (= (first state) :fail))
(assert (= (first (rest state)) "q1")))
(assert (= (car state) :fail))
(assert (= (car (cdr state)) "q1")))
(let ((state (aut "A")))
(assert (= (first state) :accept))
(assert (= (first (rest state)) "q0")))
(assert (= (car state) :accept))
(assert (= (car (cdr state)) "q0")))
(let ((state (aut "M")))
(assert (= (first state) :fail))
(assert (= (first (rest state)) "q1")))
(assert (= (car state) :fail))
(assert (= (car (cdr state)) "q1")))
(let ((state (aut "G")))
(assert (= (first state) :fail))
(assert (= (first (rest state)) "q2")))
(assert (= (car state) :fail))
(assert (= (car (cdr state)) "q2")))
(let ((state (aut "E")))
(assert (= (first state) :accept))
(assert (= (first (rest state)) "q0")))
(assert (= (car state) :accept))
(assert (= (car (cdr state)) "q0")))
+6 -6
View File
@@ -1,17 +1,17 @@
(import "oo.slime")
(define-class (vector3 x y z)
(define (set-x new-x) (mutate x new-x))
(define (set-y new-y) (mutate y new-y))
(define (set-z new-z) (mutate z new-z))
(define (set-x new-x) (mutate! x new-x))
(define (set-y new-y) (mutate! y new-y))
(define (set-z new-z) (mutate! z new-z))
(define (length)
(** (+ (* x x) (* y y) (* z z)) 0.5))
(define (scale fac)
(mutate x (* fac x))
(mutate y (* fac y))
(mutate z (* fac z))
(mutate! x (* fac x))
(mutate! y (* fac y))
(mutate! z (* fac z))
fac)
(define (add other)
+1 -1
View File
@@ -10,6 +10,6 @@
((lambda ()
(define (a)
:ok)
(define (b (:k (begin (break) (a))))
(define (b (:k (begin (show-environment) (a))))
k)
(b))))
+2 -2
View File
@@ -26,7 +26,7 @@
(define x 0)
(lambda ()
(define temp x)
(mutate x (+ x 1))
(mutate! x (+ x 1))
temp))
;; key arguments
@@ -34,7 +34,7 @@
(define (make-key-counter)
((lambda (:var)
(lambda ()
(mutate var (+ 1 var))
(mutate! var (+ 1 var))
var))
:var 0))
+2 -2
View File
@@ -1,8 +1,8 @@
(define-syntax (error)
(define-macro (error)
(assert t))
(define-syntax (test)
(define-macro (test)
`(begin
(+ 1 1)
(error)