1# Working With Characters 2 3RETRO provides words for working with ASCII characters. 4 5## Sigil 6 7Character constants are returned using the `$` sigil. 8 9## Namespace 10 11Words operating on characters are in the `c:` namespace. 12 13## Classification 14 15RETRO provides a number of words to determine if a character 16fits into predefined groups. 17 18The primary words for this are: 19 20* `c:consonant?` 21* `c:digit?` 22* `c:letter?` 23* `c:lowercase?` 24* `c:uppercase?` 25* `c:visible?` 26* `c:vowel?` 27* `c:whitespace?` 28 29There are also corresponding "not" forms: 30 31* `c:-consonant?` 32* `c:-digit?` 33* `c:-lowercase?` 34* `c:-uppercase?` 35* `c:-visible?` 36* `c:-vowel?` 37* `c:-whitespace?` 38 39All of these take a character and return either a `TRUE` or 40`FALSE` flag. 41 42## Conversions 43 44A few words are provided to convert case. Each takes a character 45and returns the modified character. 46 47* `c:to-lower` 48* `c:to-number` 49* `c:to-upper` 50* `c:toggle-case` 51 52RETRO also has `c:to-string`, which takes a character and 53creates a new temporary string with the character. 54 55## I/O 56 57Characters can be displayed using `c:put`. 58 59``` 60$a c:put 61``` 62 63With the default system on BSD, Linux, and macOS (and other 64Unix style hosts), `c:get` is provided to read input. This 65may be buffered, depending on the host. 66