dynamic (value -- dynamicValue)value: Value whose compile-time contents are forgotten.dynamicValue: Resulting value of the same schema and general value kind, with forgotten compile-time contents where applicable.dynamic is a current stack-value forgotten-contents conversion builtin. It keeps the schema of value and keeps the same general value kind, but it may erase current value knowledge.
For a known non-NIL Ref value, the referenced target becomes forgotten while the current Ref view stays the same.
In-place value becomes the same schema with forgotten contents.NIL Ref value stays a Ref value of the same schema, but the target contents become forgotten.NIL Ref value is unchanged.FALSE under isDynamic and unknownStable?. A known NIL Code value can lose its printed CNIL marker. A callable non-NIL Code value remains callable.{} 0 {} [
value: 7;
codeLocal: {} () {} codeRef;
unknownText: 0 ("") dynamic @;
[] !codeLocal
"-- In-place value --" printCompilerMessage
7 known? printStack _:;
7 dynamic printStack _:;
7 dynamic known? printStack _:;
7 dynamic isDynamic printStack _:;
"-- known Ref --" printCompilerMessage
@value known? printStack _:;
@value dynamic printStack _:;
@value dynamic known? printStack _:;
@value dynamic isDynamic printStack _:;
"-- known NIL Ref --" printCompilerMessage
0nx value addressToReference printStack _:;
0nx value addressToReference known? printStack _:;
0nx value addressToReference isDynamic printStack _:;
0nx value addressToReference dynamic printStack _:;
0nx value addressToReference dynamic known? printStack _:;
0nx value addressToReference dynamic isDynamic printStack _:;
"-- code --" printCompilerMessage
{} () {} codeRef printStack _:;
{} () {} codeRef known? printStack _:;
{} () {} codeRef isDynamic printStack _:;
{} () {} codeRef dynamic printStack _:;
{} () {} codeRef dynamic known? printStack _:;
{} () {} codeRef dynamic isDynamic printStack _:;
@codeLocal dynamic printStack _:;
@codeLocal dynamic known? printStack _:;
@codeLocal dynamic isDynamic printStack _:;
"-- text and meta --" printCompilerMessage
"hi" dynamic printStack _:;
"hi" dynamic known? printStack _:;
"hi" dynamic isDynamic printStack _:;
() dynamic printStack _:;
() dynamic known? printStack _:;
() dynamic isDynamic printStack _:;
0
] "main" exportFunction
-- In-place value --
TRUE
Int32
FALSE
TRUE
-- known Ref --
TRUE
Int32 Ref
FALSE
TRUE
-- known NIL Ref --
Int32 CNIL
FALSE
FALSE
Int32 CNIL
FALSE
FALSE
-- code --
{} () {} codeRef CNIL
FALSE
FALSE
{} () {} codeRef
FALSE
FALSE
{} () {} codeRef
FALSE
FALSE
-- text and meta --
"hi"
TRUE
FALSE
()
TRUE
FALSE
isDirty builtin (value -- isDirty) Current stack-value instability predicate; distinct from forgotten-contents state.isDynamic builtin (value -- isDynamic) Current stack-value forgotten-contents predicate; same predicate as unknownStable?.known? builtin (value -- isKnown) Preferred public name of the current stack-value knownness predicate.stable? builtin (value -- isStable) Current stack-value stability predicate; exact opposite of isDirty.unknownStable? builtin (value -- isUnknownStable) Current stack-value forgotten-contents predicate; same predicate as isDynamic.