references are strongly-typed, uncastable pointers with builtin
reference-counting and destructor invocation.
-A scalar value is interpreted as TRUE in the Boolean sense if it is not
-the null string or the number 0 (or its string equivalent, "0"). The
+A scalar value is interpreted as FALSE in the Boolean sense
+if it is undefined, the null string or the number 0 (or its
+string equivalent, "0"), and TRUE if it is anything else. The
Boolean context is just a special kind of scalar context where no
conversion to a string or a number is ever performed.
X<boolean> X<bool> X<true> X<false> X<truth>
0b011011 # binary
You are allowed to use underscores (underbars) in numeric literals
-between digits for legibility. You could, for example, group binary
+between digits for legibility (but not multiple underscores in a row:
+C<23__500> is not legal; C<23_500> is).
+You could, for example, group binary
digits by threes (as for a Unix-style mode argument such as 0b110_100_100)
or by fours (to represent nibbles, as in 0b1010_0110) or in other groups.
X<number, literal>