Permalink
Browse files

Conclusion stuff...

  • Loading branch information...
1 parent bf1ebcf commit 3481d9c0557e84ec880208d4c43d6af3fed0ad52 Sebastiaan Visser committed Feb 6, 2010
Showing with 80 additions and 5 deletions.
  1. +73 −0 presentation/Conclusion.lhs
  2. +1 −1 presentation/Makefile
  3. +4 −4 presentation/Value.lhs
  4. +2 −0 presentation/presentation.lhs
View
73 presentation/Conclusion.lhs
@@ -0,0 +1,73 @@
+%include polycode.fmt
+%include code.fmt
+
+%if style == newcode
+
+> {-# LANGUAGE GADTs #-}
+> {-# OPTIONS_GHC -F -pgmF lhs2tex -optF --pre #-}
+
+> module Conclusion where
+
+%endif
+
+% -----------------------------------------------------------------------------
+
+\begin{frame}
+\frametitle{This prototype}
+
+\begin{itemize}
+
+\item Abstract away from concrete datatypes.
+\item Abstract away from functions.
+\item Replace with type classes.\linebreak
+
+\item Different instances for different computational contexts.
+\item Functions look similar.
+\item Types get complicated.\linebreak
+
+\item Plain lazy and purely functional Haskell.
+\item Purely functional strict JavaScript.
+\item Functional reactive JavaScript.
+
+\end{itemize}
+
+\end{frame}
+
+% -----------------------------------------------------------------------------
+
+\begin{frame}
+\frametitle{Current problems}
+
+\begin{itemize}
+
+\item Explicit lifting of function application and recursion.
+\item Type signatures with big contexts.
+\item No sugar for pattern matching, let bindings, if-then-else.
+
+\end{itemize}
+
+\end{frame}
+
+% -----------------------------------------------------------------------------
+
+\begin{frame}
+\frametitle{Future work}
+
+\begin{itemize}
+
+\begin{item}
+ Additional computational contexts:
+ \begin{itemize}
+ \item Strict Haskell
+ \item Functional Reactive Haskell
+ \item Profiling support
+ \item C, Objective-C, C\tt{\#}, etc...
+ \end{itemize}
+\end{item}
+
+\item Syntactic front-end.
+
+\end{itemize}
+
+\end{frame}
+
View
2 presentation/Makefile
@@ -1,4 +1,4 @@
-SRC = presentation.tex ArithExpr.tex Expr.tex BoolLike.tex RealExpr.tex Value.tex code.fmt
+SRC = presentation.tex ArithExpr.tex Expr.tex BoolLike.tex RealExpr.tex Value.tex Conclusion.tex code.fmt
.PHONY : clean $(SRC:%.tex=ghci-%)
View
8 presentation/Value.lhs
@@ -109,16 +109,16 @@ ghci> (runHaskell test) 3
\begin{frame}
-> test :: (NumC j, ListC j, Eq j Num, BoolC j, FunC j, MaybeC j)
-> => j (Num -> Num)
+> test :: JavaScript (Num -> Num)
> test = lam (\x -> sum (replicate 3 (2 * 8) ++ replicate 3 8)
> * maybe 4 (*8) (just (x - 2)))
+\pause
\Large{
\textcolor{cmnt}{
\begin{verbatim}
-ghci> compiler test >>= writeFile "test.js"
-done
+ghci> Js.compiler test >>=
+ writeFile "test.js"
\end{verbatim}
}
}
View
2 presentation/presentation.lhs
@@ -67,5 +67,7 @@
\include{Value}
+\include{Conclusion}
+
\end{document}

0 comments on commit 3481d9c

Please sign in to comment.