haskell-lectures/VL1/content/VL1_why_haskell2.tex

23 lines
602 B
TeX

From C++ std:
\begin{cppcode}
void pop();
\end{cppcode}
\pause
From the C FLINT library:
\begin{ccode}
void fmpz_mod_poly_add(
fmpz_mod_poly_t res,
const fmpz_mod_poly_t poly1,
const fmpz_mod_poly_t poly2);
\end{ccode}
\vspace{\baselineskip}
\pause
Regular C functions in real-world (omitting examples on purpose):
\begin{itemizep}
\item 100+ LOC
\item at least 7 ifs, 4 whiles, 12 variables, 1 goto
\item accesses both static and global variables
\item indenting level of 5 or more
\item a lot of memory management and custom-made error handling
\item references everywhere!
\end{itemizep}