diff options
Diffstat (limited to 'csc/encoding.csc')
| -rw-r--r-- | csc/encoding.csc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/csc/encoding.csc b/csc/encoding.csc index 21ee88f..5c06bec 100644 --- a/csc/encoding.csc +++ b/csc/encoding.csc @@ -3,6 +3,14 @@ (import (scheme base) (only (csc match) match)) (begin + ; I'm only going to say this once, so pay attention. + ; The format of unboxed constants is described in bytecocde/src/data.rs. + ; Boxed values are represented by a pointer to an array on the heap. The + ; first position in the array is an integer code indicating what type the + ; object is. Vectors have code 0, codes for other types are not stable. + ; Vectors are represented as an array, the first element of which is the + ; integer 0 (the type code), the second element is the vector length, and + ; the remaining slots hold the array values. (define (right-shift n1 n2) |
