16 lines
1.1 KiB
TeX
16 lines
1.1 KiB
TeX
\emph{\ifger{Referenzielle Transparenz}{Referential transparency}}, \ifger{also}{as in}:
|
|
\slidep
|
|
\begin{itemizep}
|
|
\item \ifger{alles (Variablen, Datenstrukturen)}{everything (variables, data structures...)} \ifger{ist}{is} \emph{immutable}
|
|
\item \ifger{Ausdrücke haben niemals Seiteneffekte (Erinnerung: mathematische Funktionen)}{expressions never have side-effects (remember: mathematical functions)}
|
|
\item \ifger{gleiche Eingabe}{same input} $\mapsto$ \ifger{gleiche Ausgabe}{same output}... \emph{\ifger{immer}{always}}!
|
|
\item \ifger{wir können eine Funktion mit ihrem (Rückgabe-)Wert ersetzen... was passiert, wenn wir das in C oder java tun? (Erinnerung:}{replace a function with it's (return) value? Yes. What happens in C or java if you do that? Remember} \cppinline{void pop();}\ifger{)}{?}
|
|
\end{itemizep}
|
|
\slidep
|
|
\vspace{\baselineskip}
|
|
\ifger{mögliche Vorteile?}{possible benefits?}
|
|
\begin{itemizep}
|
|
\item \ifger{Parallelisierung}{parallelism}
|
|
\item \ifger{Denken in Gleichungen und hohes Refactoring-Potenzial}{equational reasoning and refactoring}
|
|
\item \ifger{weniger Bugs!}{less bugs!}
|
|
\end{itemizep} |