Hi, diese Woche geht es um den zweiten Teil der
funktionalen Programmierung. Den ersten Teil hattet ihr in der Theorie
ja schon letzte Woche bei Professor Riebisch.
Diesmal wird es halt auch einen praktischen Teil dazu geben.
Wir benutzen dazu eine ganz andere Programmiersprache, nämlich Recket und
auch eine ganz andere IDE, nämlich Dr. Recket.
Es wird dazu diesmal so drei oder vier Videos geben,
die dafür über ein ganzes Stückchen kleiner ausfallen werden.
Also kürzer. Das hier ist der Link,
wo ihr euch die IDE runterladen könnt
Falls ihr selber mal ein paar Sachen ausprobieren wollt und am besten,
wir fangen jetzt einfach mal an, indem ich euch die ID zeige.
Es kann sein, dass ihr am Anfang hier eine Sprache auswählen müsst.
Den müsst ihr hier auf Sprache auswählen gehen und sagt dann,
okay, ich habe das hier schon gemacht,
deswegen fängst du hier Landridge Racket.
Deswegen breche ich das hier ab.
Und hier unten ist ganz einfach ein Prompt.
Da gebt ihr Dinge ein und kriegt dann von der IDI
ein Ergebnis geliefert.
Wichtig ist vielleicht die Notation. Als allererstes, man kann Bemerkungen machen,
also man kann Kommentare machen mit einem Semikola und fängt einen Kommentar an.
Wenn ich jetzt sowas schreiben wollte, wie vier plus vier,
dann geht das in Record anders. Das da ist ein Infix-Operator,
das heißt also das Plus-Zeichen steht zwischen den beiden Dingen, die hier zusammengezählt werden sollen.
Bei Record wird ein Präfix-Operator verwendet und Ausdrücke stehen bei Record auch immer in runden Klammern. Das heißt,
ich würde hier jetzt sowas schreiben, wie plus 4,
4, ich das dann mit dem Cursor ganz da hingehe,
dass das markiert wird, dann und Enter drücke,
dann kommt dabei die 8 draus,
das Gleiche gilt logischerweise auch mit Minus,
zum Beispiel minus 2, 3, er gibt minus 1,
ich kann eine vorgefertigte Funktion benutzen, zum Beispiel Wurzel 16,
gibt die 4. Ich kann auch zusammengesetzte Ausdrücke benutzen.
Zum Beispiel sowas wie, ich mache es erstmal,
wie es normalerweise mit Infix wäre,
also mache ich wieder einen Kommentar und mache sowas
wie zwei mal fünf plus Wurzel
25 zum Beispiel mal. Wenn ich das jetzt in Racket schreiben wollen würde,
dann hätte ich sowas wie Plus und dann die dann
Ausdruck mal zwei 5 und dann ist es cool,
wieder ein Ausdruck.
Das QRT
25, jetzt muss ich die Klammer hier noch zumachen.
Und da sollte jetzt hoffentlich sowas in der Nähe von 15
rauskommen und da steht es dann auch.
So ein Operant wird auf alles, was dann dahinter kommt, angewendet.
Wenn ich jetzt sowas schreiben würde, wie geteilt zwei drei, vier.
Was kommt da raus? Das heißt nichts anderes,
als dass die zwei erst durch drei geteilt wird.
Und dann wird das Ganze durch vier geteilt, macht,
ich glaube, so asymptotisch zwei Zwölftel,
also ein Sechstel und da steht es dann halt auch als Bruch.
Die Lücken sind hier wichtig. Wenn ich jetzt sowas schreiben würde,
wie mal zwei, drei, dann kriege ich eine Fehlermeldung,
weil das kennt er nicht. Das heißt also,
ich muss dann schon nach dem Mahlzeichen eine Lücke lassen.
Und dann gibt es die sechs, die wir erwarten.
Damit kann man auch ein bisschen kompliziertere Ausdrücke machen,
zum Beispiel sowas wie das hier.
Ich zeige euch einfach mal, wie wir da rangehen,
also mache ich das ein bisschen kleiner. Und ich glaube,
ich muss Dr. Racket auch kleiner machen, weil sonst überlappt das.
So, und wir haben hier also offensichtlich einen Bruch und
eine Multiplikation und eine Addition und noch eine Multiplikation.
Ich würde immer jetzt bei dem Bruchstrich anfangen. Ich würde
immer von dem Größeren zum Kleineren gehen. Das heißt also,
wir haben hier geteilt und dann haben wir einen Ausdruck und dieser Ausdruck ist,
jetzt gehe ich hier wieder in die Mitte, plus,
dann habe ich noch einen Ausdruck und das ist dann mal eins,
vier, das ist also dieser Teil hier.
Und dann mit Lücke wieder ein Ausdruck,
das ist dann wieder mal und Fünf, sechs.
Jetzt habe ich im Prinzip das über dem Bruchstrich,
ja, dieses Plus ist das, plus das hier steht,
mal 1.4 ist diese Rechnung mal 5, 6,
ist diese Rechnung.
Jetzt mache ich hinterm Bruchstrich weiter, habe wieder einen Ausdruck,
gehe dann auch hier wieder in der Mitte los.
Ich habe hier also eine Multiplikation, mal,
dann habe ich wieder einen Ausdruck.
Plus 3,
Und dann habe ich wieder einen Ausdruck. Plus 5,
6. So, wenn ich jetzt ganz nach hinten gehe,
dann sollte irgendwas, was muss denn da rauskommen?
Einmal 4 plus, 34 geteilt durch 20,
23 und 34 durch 29 oder irgendwie sowas müsste da rauskommen.
34 durch 77, noch nicht schlecht. Da haben wir Was falsch gemacht,
wenn man einmal 4, das hier oben sind die 34,
warum kommt da unten, also wir haben hier,
naja, okay, also dadurch,
dass sich das geklammert habe, hier in den Ausdrücken,
rechne ich erst 3 plus 4 und dann 5 plus 6,
macht zusammen 7 mal 11 und das sind die 77 hier,
das ist also so, als hätte ich hier Klammern gesetzt.
Also wenn ich das jetzt wirklich so bauen würde,
müsste ich das unterm Bruchstrich anders machen, Da müsste ich
tatsächlich mit der Addition anfangen, machen wir das doch einfach nochmal.
Da hatte ich mich jetzt eben selber vertan,
der erste Teil bleibt gleich.
Mal 5. 6,
die andere
So, jetzt haben wir den ersten Teil, jetzt machen wir wieder einen neuen Ausdruck.
Und jetzt rechnen wir im Prinzip drei Dinge zusammen,
also machen wir einmal ein Plus, haben dann eine Drei,
haben dann einen Ausdruck, nämlich mal vier, fünf, aber mit Lücke.
Und haben dann die Sechs. Weil wir haben ja oben ja schon gesehen,
der Operant vorn wird auf alles, was dahinter kommt, angewendet.
Das heißt, dieses Plus wird auf alles danach angewendet,
dieses Plus verbindet, also die drei, diese drei,
mit dem Ergebnis der Multiplikation und dann danach mit der Sechs,
gucken wir es jetzt rauskommt, jetzt kommen tatsächlich 34,
29. raus,
das wird hier gleich gekürzt von Racket.
Das ist jetzt mal der erste Teil und wir sehen uns
dann gleich wieder zum zweiten Teil