Fix typos
[matthijs/master-project/haskell-symposium-talk.git] / summary.lhs
index 94b11b53fec31b639c333f1f596beb48d11fdf16..6467af850bfab988a81e647dae282ac70a23b86d 100644 (file)
@@ -5,8 +5,8 @@
 \frametitle{Some final words}
 \begin{itemize}
   \item Still a lot to do: translate larger subset of Haskell
-  \item Real world prototypes can be made in \clash{}
-  \item \clash{} is another great example of how to bring functional expressivity to hardware designs
+  \item Real world prototype designs can already be made in \clash{}
+%  \item \clash{} is another great example of how to bring functional expressivity to hardware designs
 \end{itemize}
 }
 
 
 \frame
 {
-\frametitle{Complete signature for registerBank}
+\frametitle{Complete signatures and Types}
 \begin{code}
-registerBank :: 
-  ( NaturalT s
+type Word         =   SizedInt D12  
+type Instruction  =   ( Opcode, Word, RangedWord D9
+                      , RangedWord D9 )
+
+registers :: 
+  ( NaturalT s 
   , PositiveT (s :+: D1)
-  , ((s :+: D1) :>: s) ~ True )) =>
-  (RegState s a) -> a -> RangedWord s ->
-  RangedWord s -> Bit -> ((RegState s a), a )
+  , ((s :+: D1) :>: s) ~ True )) => 
+  a -> RangedWord s -> RangedWord s -> 
+  (RegState s a) -> 
+  (RegState s a, a )
 \end{code}
 }
 
-\frame{
-\begin{figure}
-\centerline{\includegraphics[width=12cm]{polyaluhardware}}
-\label{img:mealymachine}
-\end{figure}
-}
-
-\frame{
-\begin{figure}
-\centerline{\includegraphics[width=12cm]{polyaluhardware-reg}}
-\label{img:mealymachine}
-\end{figure}
+\frame
+{
+\frametitle{Supported Functionality}
+\begin{itemize}
+\item Polymorphism
+\item Higher Order Functions
+\item Fixed-Size Vectors (Simulation)
+\item Ranged and Sized Integers (Simulation)
+\item Custom Datatypes
+\item Booleans, Tuples
+\item Pattern Matching
+\item Guards
+\end{itemize}
 }
 
-\frame{
-\begin{figure}
-\centerline{\includegraphics[width=12cm]{polyaluhardware-add}}
-\label{img:mealymachine}
-\end{figure}
+\frame
+{
+\frametitle{Unsupported Functionality}
+\begin{itemize}
+\item Recursions
+\item Lists (Dynamic Length)
+\item Standard Haskell Types: Integer, Char, etc.
+\item Monads
+\item And much much more...
+\end{itemize}
 }