Improve polymorphism slides
# Conflicts: # VL2/content/VL2_polymorphism2.tex
This commit is contained in:
parent
f335b3a522
commit
b09e11aef9
@ -11,6 +11,7 @@
|
|||||||
|
|
||||||
\slide{./content/VL2_polymorphism1.tex}
|
\slide{./content/VL2_polymorphism1.tex}
|
||||||
\slide{./content/VL2_polymorphism2.tex}[ (cnt.)]
|
\slide{./content/VL2_polymorphism2.tex}[ (cnt.)]
|
||||||
|
\slide{./content/VL2_polymorphism3.tex}[ (cnt.)]
|
||||||
|
|
||||||
|
|
||||||
\section{\ifger{Andere Arten der Funktionsdefinition}{More ways to define functions}}
|
\section{\ifger{Andere Arten der Funktionsdefinition}{More ways to define functions}}
|
||||||
|
@ -7,13 +7,4 @@ head :: [a] -> a
|
|||||||
\vspace{\baselineskip}
|
\vspace{\baselineskip}
|
||||||
\\
|
\\
|
||||||
\pause
|
\pause
|
||||||
\ifger{Wir können sogar Funktionen schreiben wie:}{We can also have:}
|
\ifger{Frage: könnte \hinline{a} eine Funktion sein?}{Question: could \hinline{a} be a function?}
|
||||||
\begin{haskellcode}
|
|
||||||
f :: a -> b
|
|
||||||
\end{haskellcode}
|
|
||||||
\pause
|
|
||||||
\ifger{D.h. was auch immer diese Funktion macht, sie bekommt etwas von einem Typ rein und gibt etwas von einem anderen Typ aus. \hinline{a} und \hinline{b} könnten vom selben Typ sein, müssen aber nicht! D.h. Funktionen dieser Art geben uns häufig mehr Freiheit. Mehr können wir über diese Funktion nicht sagen.}{So, whatever the function does... it gets something of one type and returns something of another type. \hinline{b} \emph{could} be the same type as \hinline{a} here, but it doesn't need to, so functions of this type often give us more freedom! That's all we know about this function.}
|
|
||||||
\vspace{\baselineskip}
|
|
||||||
\\
|
|
||||||
\pause
|
|
||||||
\ifger{Hinweis: wir müssen nicht die Buchstaben \hinline{a} und \hinline{b} nehmen. Sie werden nur häufig für generische Datentypen benutzt.}{Note: you don't have to use \hinline{a} or \hinline{b} here. These letters are just commonly used for generic types.}
|
|
10
VL2/content/VL2_polymorphism3.tex
Normal file
10
VL2/content/VL2_polymorphism3.tex
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
\ifger{Wir können sogar Funktionen schreiben wie:}{We can also have:}
|
||||||
|
\begin{haskellcode}
|
||||||
|
f :: a -> b
|
||||||
|
\end{haskellcode}
|
||||||
|
\pause
|
||||||
|
\ifger{D.h. was auch immer diese Funktion macht, sie bekommt etwas von einem Typ rein und gibt etwas von einem anderen Typ aus. \hinline{a} und \hinline{b} könnten vom selben Typ sein, müssen aber nicht! D.h. Funktionen dieser Art geben uns häufig mehr Freiheit. Mehr können wir über diese Funktion nicht sagen.}{So, whatever the function does... it gets something of one type and returns something of another type. \hinline{b} \emph{could} be the same type as \hinline{a} here, but it doesn't need to, so functions of this type often give us more freedom! That's all we know about this function.}
|
||||||
|
\vspace{\baselineskip}
|
||||||
|
\\
|
||||||
|
\pause
|
||||||
|
\ifger{Hinweis: wir müssen nicht die Buchstaben \hinline{a} und \hinline{b} nehmen. Sie werden nur häufig für generische Datentypen benutzt.}{Note: you don't have to use \hinline{a} or \hinline{b} here. These letters are just commonly used for generic types.}
|
Loading…
Reference in New Issue
Block a user