1 Die Macht der Abstraktion - Anfänger

► |  | Sprachebenen und Material zu 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

▼ | 1 | Die Macht der Abstraktion - Anfänger

1.1 | Definitionen
1.2 | Record-Typ-Definitionen
1.3 | Prozedurapplikation
1.4 | #t and #f
1.5 | lambda
1.6 | Bezeichner
1.7 | cond
1.8 | if
1.9 | and
1.10 | or
1.11 | let, letrec und let*
1.12 | begin
1.13 | Signaturen
1.14 | Testfälle
1.15 | Parametrische Record-Typ-Definitionen
1.16 | Eigenschaften
1.17 | Primitive Operationen

top← prev up next →

### 1`` Die Macht der Abstraktion - Anfänger

This is documentation for the language level Die Macht der Abstraktion - Anfänger to go with the German textbook Die Macht der Abstraktion.

program |  | = |  | def-or-expr...
def-or-expr |  | = |  | definition
|  | | |  | expr
|  | | |  | test-case
definition |  | = |  | ( define id expr)
|  | | |  | ( define-record-procedures id id id (id ...))
|  | | |  | ( define-record-procedures-parametric (id id ...) id id (id ...))
|  | | |  | (: id sig)
expr |  | = |  | (expr expr ...) ; Prozedurapplikation
|  | | |  | #t
|  | | |  | #f
|  | | |  | number
|  | | |  | string
|  | | |  | ( lambda (id ...) expr)
|  | | |  | id ; Bezeichner
|  | | |  | ( cond (expr expr) (expr expr) ...)
|  | | |  | ( cond (expr expr) ... ( else expr))
|  | | |  | ( if expr expr)
|  | | |  | ( and expr ...)
|  | | |  | ( or expr ...)
|  | | |  | ( let ((id expr) ...) expr)
|  | | |  | ( letrec ((id expr) ...) expr)
|  | | |  | ( let* ((id expr) ...) expr)
|  | | |  | ( begin expr expr ...)
|  | | |  | ( signature sig)
|  | | |  | ( for-all ((id sig) ...) expr)
|  | | |  | (==> expr expr)
sig |  | = |  | id
|  | | |  | ( predicate expr)
|  | | |  | ( one-of expr ...)
|  | | |  | ( mixed sig ...)
|  | | |  | (sig ... -> sig) ; Prozedur-Signatur
|  | | |  | ( list sig)
|  | | |  | %a %b %c ; Signatur-Variable
|  | | |  | ( combined sig ...)
|  | | |  | signature
test-case |  | = |  | ( check-expect expr expr)
|  | | |  | ( check-within expr expr expr)
|  | | |  | ( check-member-of expr expr ...)
|  | | |  | ( check-range expr expr expr)
|  | | |  | ( check-error expr expr)
|  | | |  | ( check-property expr)

Ein id ist eine Folge von Zeichen, die weder Leerzeichen noch eins der folgenden Zeichen enthält:
" , ' ` ( ) [ ] { } | ; #
Ein number ist eine Zahl wie z.B. 123, 3/2 oder 5.5.
Ein string ist eine Zeichenkette, und durch ein Paar von " umschlossen. So sind z.B. "abcdef", "This is a string" und "Dies ist eine Zeichenkette, die \" enthält." Zeichenketten.

Zahlen
* : (number number number ... -> number)
+ : (number number number ... -> number)
- : (number number ... -> number)
/ : (number number number ... -> number)
< : (real real real ... -> boolean)
<= : (real real real ... -> boolean)
= : (number number number ... -> boolean)
> : (real real real ... -> boolean)
>= : (real real real ... -> boolean)
abs : (real -> real)
acos : (number -> number)
angle : (number -> real)
asin : (number -> number)
atan : (number -> number)
ceiling : (real -> integer)
complex? : (%a -> boolean)
cos : (number -> number)
current-seconds : (-> natural)
denominator : (rational -> natural)
even? : (integer -> boolean)
exact->inexact : (number -> number)
exact? : (number -> boolean)
exp : (number -> number)
expt : (number number -> number)
floor : (real -> integer)
gcd : (natural natural ... -> natural)
imag-part : (number -> real)
inexact->exact : (number -> number)
inexact? : (number -> boolean)
integer? : (%a -> boolean)
lcm : (natural natural ... -> natural)
log : (number -> number)
magnitude : (number -> real)
make-polar : (real real -> number)
max : (real real ... -> real)
min : (real real ... -> real)
modulo : (integer integer -> integer)
natural? : (%a -> boolean)
negative? : (number -> boolean)
number->string : (number -> string)
number? : (%a -> boolean)
numerator : (rational -> integer)
odd? : (integer -> boolean)
positive? : (number -> boolean)
quotient : (integer integer -> integer)
random : (natural -> natural)
rational? : (%a -> boolean)
real-part : (number -> real)
real? : (%a -> boolean)
remainder : (integer integer -> integer)
round : (real -> integer)
sin : (number -> number)
sqrt : (number -> number)
string->number : (string -> (mixed number (one-of #f)))
tan : (number -> number)
zero? : (number -> boolean)
boolesche Werte
boolean=? : (boolean boolean -> boolean)
boolean? : (%a -> boolean)
false? : (%a -> boolean)
not : (boolean -> boolean)
true? : (%a -> boolean)
Listen
empty : list
empty? : (%a -> boolean)
Schokokekse
chocolate-cookie-chocolate : (chocolate-cookie -> number)
chocolate-cookie-cookie : (chocolate-cookie -> number)
chocolate-cookie? : (%a -> boolean)
make-chocolate-cookie : (number number -> chocolate-cookie)
Zeichenketten
string->strings-list : (string -> (list string))
string-append : (string string ... -> string)
string-length : (string -> natural)
string<=? : (string string string ... -> boolean)
string<? : (string string string ... -> boolean)
string=? : (string string string ... -> boolean)
string>=? : (string string string ... -> boolean)
string>? : (string string string ... -> boolean)
string? : (%a -> boolean)
strings-list->string : ((list string) -> string)
Symbole
Verschiedenes
violation : (string -> unspecific)
write-newline : (-> unspecific)
write-string : (string -> unspecific)

top← prev up next →