5.17 Unchanged Forms

► |  | How to Design Programs Languages

1 | Beginning Student
2 | Beginning Student with List Abbreviations
3 | Intermediate Student
4 | Intermediate Student with Lambda
5 | Advanced Student
| Index

▼ | 5 | Advanced Student

5.1 | define
5.2 | define-struct
5.3 | define-datatype
5.4 | lambda
5.5 | Function Calls
5.6 | begin
5.7 | begin0
5.8 | set!
5.9 | delay
5.10 | shared
5.11 | let
5.12 | recur
5.13 | case
5.14 | match
5.15 | when and unless
5.16 | Primitive Operations
5.17 | Unchanged Forms

On this page:

local
letrec
let*
cond
else
if
and
or
time
check-expect
check-within
check-error
check-member-of
check-range
empty
true
false
require

top← prev up next →

#### 5.17`` Unchanged Forms

( local [definition ...] expr)

( letrec ([id expr-for-let] ...) expr)

( let* ([id expr-for-let] ...) expr)

The same as Intermediate’s local, letrec, and let*.

( cond [expr expr] ... [expr expr])

else

The same as Beginning’s cond, except that else can be used with case.

( if expr expr expr)

The same as Beginning’s if.

( and expr expr expr ...)

( or expr expr expr ...)

The same as Beginning’s and and or.

( time expr)

The same as Intermediate’s time.

( check-expect expr expr)

( check-within expr expr expr)

( check-error expr expr)

( check-member-of expr expr expr ...)

( check-range expr expr expr)

The same as Beginning’s check-expect, etc.

empty : empty?

true : boolean?

false : boolean?

Constants for the empty list, true, and false.

( require module-path)

The same as Beginning’s require.
top← prev up next →