Absence & nothing
Done, the unit value
What does print hand back? Not “nothing” — there’s no nothing here. It hands back Done, the unit value: Ascent’s honest “there’s no information to report.”
print runs, and then its value — Done — is what lands in the slot, so nothing == Done is True. Assignments and loops evaluate to Done the same way: they do something rather than produce something.
Done is a real, single value — you can even write it as {}, an empty block — not a void hole that isn’t there. That distinction looks small now, but it’s exactly what the next screen leans on.