 ! Floats
 
 M: float '
-    float tag-number dup [
-        align-here double>bits emit-64
-    ] emit-object ;
+    [
+        float tag-number dup [
+            align-here double>bits emit-64
+        ] emit-object
+    ] cache-object ;
 
 ! Special objects
 

M: string '
    #! We pool strings so that each string is only written once
    #! to the image
    objects get [ emit-string ] cache ;

: assert-empty ( seq -- )
    length 0 assert= ;

! Quotations

M: quotation '
    [
        quotation-array '
        quotation type-number object tag-number [
            emit ! array
