2.3 Pattern-Matching

► |  | Sprachebenen und Material zu Schreibe Dein Programm! / Die Macht der Abstraktion

1 | Die Macht der Abstraktion - Anfänger
2 | Die Macht der Abstraktion
3 | Die Macht der Abstraktion mit Zuweisungen
4 | Die Macht der Abstraktion fortgeschritten
5 | Konstruktionsanleitungen 1 bis 10
6 | Bilder konstruieren: "image.ss"
7 | Animationen: "world.ss"
8 | Turtle-Grafik: "turtle.ss"
9 | Abspielen von Audio-Dateien: "sound.ss"
10 | 3D-Liniengraphik: "line3d.ss"
11 | DMd A: Sprachen als Libraries
| Index

▼ | 2 | Die Macht der Abstraktion

2.1 | Signaturen
2.2 | let, letrec und let*
2.3 | Pattern-Matching
2.4 | Primitive Operationen

top ← prev up next →

#### 2.3`` Pattern-Matching

> syntax (match expr (pattern expr) ...)
> pattern |  | = |  | ...
> |  | | |  | empty
> |  | | |  | (make-pair pattern pattern)
> |  | | |  | (list pattern ...)

Zu den Patterns aus der "Anfänger"-Sprache kommen noch drei neue hinzu:

- Das Pattern empty paßt auf die leere Liste.

- Das Pattern (make-pair pattern pattern) paßt auf Paare, bei denen die beiden inneren Patterns auf first bzw. rest passen.

- Das Pattern [(list pattern ...)] paßt auf Listen, die genauso viele Elemente haben, wie Teil-Patterns im list-Pattern stehen und bei denen die inneren Patterns auf die Listenelemente passen.

top ← prev up next →