\item We maken hardware omdat we, soms vaag gedefineerde, problemen willen oplossen.
\item Oplossingen, vooral in de signaalverwerking (video, muziek, TV, etc.), zijn beschreven als een verzameling van wiskundige formules
{
\item We maken hardware omdat we, soms vaag gedefineerde, problemen willen oplossen.
\item Oplossingen, vooral in de signaalverwerking (video, muziek, TV, etc.), zijn beschreven als een verzameling van wiskundige formules
-\item Wat we dus graag zouden hebben, een zogenaamde heilige graal, is een programma aan welke we deze formules geven, en dat er dan automatisch super efficiente hardware uit komt.
-\item Maar... wat is de formule van een CPU/Processor? Misschien moet is een oplossingen in `normaal nederlands' soms een betere input voor zo'n programma?
+\item Heilige graal -$>$ alles automatisch
+\item Onbereikbaar
+\item Hebben we geen wiskundige programmeertalen?
}
\frame
{
\frametitle{Functional Languages}
\begin{itemize}
}
\frame
{
\frametitle{Functional Languages}
\begin{itemize}
-\item Functional programming languages allow us to specify programs that are close to a set of mathematical equations.
-\end{itemize}
-}
-\note[itemize]
-{
\item Functionele talen liggen dicht bij de wiskunde
\item Functionele talen liggen dicht bij de wiskunde
-}
-
-\frame
-{
-\frametitle{Functional Languages \& Hardware}
+\item Calculate $2 * 3 + 3 * 4$
\begin{itemize}
\begin{itemize}
-\item When we want to calculate, 1 + 2 + 3, there is nothing that dictates that we should first calculate 1 + 2
-\item Like mathematical equations, Functional languages do not dictate an order when there is none. So everything can be calculated in parallel.
-\item In hardware, everything also happens in parallel: electrons flow through all the transistors every moment in time.
-\item IDEA: Use functional languages to describe hardware!
+\item First calculate $2* 3$ ?
+\item Or start with $3 * 4$ ?
+\end{itemize}
\end{itemize}
}
\end{itemize}
}
+
\note[itemize]
{
\note[itemize]
{
-\item In wiskundige formules is er vaak geen volgorde gedefineerd
-\item Dit is dus hetzelfde in functionele talen, wat betekent dat alles tegelijk/parallel kan worden uitgerekent.
-\item Bij `normale' programmeertalen is er vaak wel een volgorde
-\item In hardware gebeurt ook alles tegelijkertijd
-\item Het idee is dus om hardware te beschrijven in een functionele taal
+\item Functionele talen eisen (vaak) geen volgorde van uitrekenen