Plait supports various kinds of numbers, all with type Number :
> 1- Number
1
> 0.5- Number
0.5
> 1/2- Number
1/2
> 1+2i- Number
1+2i
The number 1/2 is a literal number, not a division operation. Similarly, 1+2i is a literal complex number. The full syntax of numbers is probably not important, but it’s Racket’s number syntax.
The booleans true and false are written #t and #f, but you can also write them #true and #false:
> #t- Boolean
#t
> #f- Boolean
#f
> #true- Boolean
#t
> #false- Boolean
#f
Strings are written the usual way with a starting and ending ":
> "apple"- String
"apple"
> "banana cream pie"- String
"banana cream pie"
> "yes, \"escape\" quotes with backslash"- String
"yes, \"escape\" quotes with backslash"
In addition to strings, Plait includes string-like values called symbols. A symbol is written with a single quote ' followed by a sequence of non-whitespace characters.
> 'apple- Symbol
'apple
> 'banana-cream-pie- Symbol
'banana-cream-pie
> 'a->b- Symbol
'a->b
> '#%$^@*&?!- Symbol
'#%$^@*&?!
Almost any non-whitespace character is allowed in a symbol, except for the following characters:
( ) [ ] { } " , ' ` ;
Characters like -, >, and ? are not only allowed in symbols, they are frequently used that way. The | and \ characters are allowed, but they’re treated as quoting and escaping characters, so don’t use them.
Individual characters are infrequently used in Plait, but they’re written with #\:
> #\a- Char
#\a
> #\b- Char
#\b
> #\A- Char
#\A
> #\space;same as #\ followed by a space- Char
#\space