: check-box ( box -- box )\r
dup occupied>> [ box-empty ] unless ; inline\r
\r
+<PRIVATE\r
+\r
+: box-unsafe> ( box -- value )\r
+ [ f ] change-value f >>occupied drop ; inline\r
+\r
+PRIVATE>\r
+\r
: box> ( box -- value )\r
- check-box [ f ] change-value f >>occupied drop ; inline\r
+ check-box box-unsafe> ; inline\r
\r
: ?box ( box -- value/f ? )\r
- dup occupied>> [ box> t ] [ drop f f ] if ; inline\r
+ dup occupied>> [ box-unsafe> t ] [ drop f f ] if ; inline\r
\r
: if-box? ( box quot -- )\r
[ ?box ] dip [ drop ] if ; inline\r