Skip to content

Commit

Permalink
crook
Browse files Browse the repository at this point in the history
  • Loading branch information
dvanhorn committed Dec 5, 2024
1 parent 82efccf commit 066b56f
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 14 deletions.
14 changes: 7 additions & 7 deletions iniquity-plus/types.rkt
Original file line number Diff line number Diff line change
Expand Up @@ -27,20 +27,20 @@
[(char-bits? b)
(integer->char (arithmetic-shift b (- char-shift)))]
[(box-bits? b)
(box (bits->value (heap-ref b)))]
(box (bits->value (mem-ref b)))]
[(cons-bits? b)
(cons (bits->value (heap-ref (+ b 8)))
(bits->value (heap-ref b)))]
(cons (bits->value (mem-ref (+ b 8)))
(bits->value (mem-ref b)))]
[(vect-bits? b)
(if (zero? (untag b))
(vector)
(build-vector (heap-ref b)
(build-vector (mem-ref b)
(lambda (j)
(bits->value (heap-ref (+ b (* 8 (add1 j))))))))]
(bits->value (mem-ref (+ b (* 8 (add1 j))))))))]
[(str-bits? b)
(if (zero? (untag b))
(string)
(build-string (heap-ref b)
(build-string (mem-ref b)
(lambda (j)
(char-ref (+ b 8) j))))]
[else (error "invalid bits")]))
Expand Down Expand Up @@ -82,7 +82,7 @@
(arithmetic-shift (arithmetic-shift i (- (integer-length ptr-mask)))
(integer-length ptr-mask)))

(define (heap-ref i)
(define (mem-ref i)
(ptr-ref (cast (untag i) _int64 _pointer) _int64))

(define (char-ref i j)
Expand Down
14 changes: 7 additions & 7 deletions knock-plus/types.rkt
Original file line number Diff line number Diff line change
Expand Up @@ -27,20 +27,20 @@
[(char-bits? b)
(integer->char (arithmetic-shift b (- char-shift)))]
[(box-bits? b)
(box (bits->value (heap-ref b)))]
(box (bits->value (mem-ref b)))]
[(cons-bits? b)
(cons (bits->value (heap-ref (+ b 8)))
(bits->value (heap-ref b)))]
(cons (bits->value (mem-ref (+ b 8)))
(bits->value (mem-ref b)))]
[(vect-bits? b)
(if (zero? (untag b))
(vector)
(build-vector (heap-ref b)
(build-vector (mem-ref b)
(lambda (j)
(bits->value (heap-ref (+ b (* 8 (add1 j))))))))]
(bits->value (mem-ref (+ b (* 8 (add1 j))))))))]
[(str-bits? b)
(if (zero? (untag b))
(string)
(build-string (heap-ref b)
(build-string (mem-ref b)
(lambda (j)
(char-ref (+ b 8) j))))]
[else (error "invalid bits")]))
Expand Down Expand Up @@ -82,7 +82,7 @@
(arithmetic-shift (arithmetic-shift i (- (integer-length ptr-mask)))
(integer-length ptr-mask)))

(define (heap-ref i)
(define (mem-ref i)
(ptr-ref (cast (untag i) _int64 _pointer) _int64))

(define (char-ref i j)
Expand Down

0 comments on commit 066b56f

Please sign in to comment.