► |  | Guide: PLT Scheme

1 | Welcome to PLT Scheme
2 | Scheme Essentials
3 | Built-In Datatypes
4 | Expressions and Definitions
5 | Programmer-Defined Datatypes
6 | Modules
7 | Contracts
8 | Input and Output
9 | Regular Expressions
10 | Exceptions and Control
11 | Iterations and Comprehensions
12 | Pattern Matching
13 | Classes and Objects
14 | Units (Components)
15 | Reflection and Dynamic Evaluation
16 | Macros
17 | Performance
18 | Running and Creating Executables
19 | Compilation and Configuration
20 | More Libraries
21 | Dialects of Scheme
| Bibliography
| Index

▼ | 2 | Scheme Essentials

2.1 | Simple Values
2.2 | Simple Definitions and Expressions
2.3 | Lists, Iteration, and Recursion
2.4 | Pairs, Lists, and Scheme Syntax

Version: 4.1.4
top← prev up next →

#### 2.1`` Simple Values

Scheme values include numbers, booleans, strings, and byte strings. In DrScheme and documentation examples (when you read the documentation in color), value expressions are shown in green.

Numbers are written in the usual way, including fractions and imaginary numbers:

Numbers (later in this guide) explains more about numbers.

1 1.0
1/2 0.5
9999999999999999999999 1e+22
1+2i 1.0+2.0i

Booleans are #t for true and #f for false. In conditionals, however, all non-#f values are treated as true.

Booleans (later in this guide) explains more about booleans.

Strings are written between doublequotes. Within a string, backslash is an escaping character; for example, a backslash followed by a doublequote includes a literal doublequote in the string. Except for an unescaped doublequote or backslash, any Unicode character can appear in a string constant.

Strings (Unicode) (later in this guide) explains more about strings.

"hello world"
"A \"fancy\" string"
"λx:(μα.α→α).xx"

When a constant is evaluated in the REPL, it typically prints the same as its input syntax. In some cases, the printed form is a normalized version of the input syntax. In documentation and in DrScheme’s REPL, results are printed in blue instead of green to highlight the difference between an input expression and a printed result.

Examples:
> 1.0000
1.0
> "A \u0022fancy\u0022 string"
"A \"fancy\" string"

top← prev up next →