Compare commits
	
		
			2 Commits
		
	
	
		
			342aba4426
			...
			19fd3bc1b9
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					19fd3bc1b9 | ||
| 
						 | 
					38a7325097 | 
@@ -1,6 +1,5 @@
 | 
				
			|||||||
\documentclass{beamer}
 | 
					\documentclass{beamer}
 | 
				
			||||||
\usepackage{tikz}
 | 
					\usepackage{tikz}
 | 
				
			||||||
%\usepackage{minted}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
\usetikzlibrary{positioning}
 | 
					\usetikzlibrary{positioning}
 | 
				
			||||||
\usetheme{Darmstadt}
 | 
					\usetheme{Darmstadt}
 | 
				
			||||||
@@ -43,42 +42,6 @@
 | 
				
			|||||||
		\centering
 | 
							\centering
 | 
				
			||||||
		\includegraphics[width=.75\textwidth]{imgs/gadt.png}
 | 
							\includegraphics[width=.75\textwidth]{imgs/gadt.png}
 | 
				
			||||||
	\end{figure}
 | 
						\end{figure}
 | 
				
			||||||
%type _ t_var =
 | 
					 | 
				
			||||||
%  | BVar: ident -> bool t_var
 | 
					 | 
				
			||||||
%  | IVar: ident -> int t_var
 | 
					 | 
				
			||||||
%  | RVar: ident -> real t_var
 | 
					 | 
				
			||||||
%
 | 
					 | 
				
			||||||
%type _ t_expression =
 | 
					 | 
				
			||||||
%  | EVar: 'a t_var -> 'a t_expression
 | 
					 | 
				
			||||||
%  | EMonOp: monop * 'a t_expression -> 'a t_expression
 | 
					 | 
				
			||||||
%  | EBinOp: binop * 'a t_expression * 'a t_expression -> 'a t_expression
 | 
					 | 
				
			||||||
%  | ETriOp: triop * bool t_expression * 'a t_expression * 'a t_expression -> 'a t_expression
 | 
					 | 
				
			||||||
%  | EComp:  compop * 'a t_expression * 'a t_expression -> bool t_expression
 | 
					 | 
				
			||||||
%  | EConst: 'a const -> 'a t_expression
 | 
					 | 
				
			||||||
%  | ETuple: 'a t_expression * 'b t_expression -> ('a * 'b) t_expression
 | 
					 | 
				
			||||||
%  | EApp: (('a -> 'b) t_node) * 'a t_expression -> 'b t_expression
 | 
					 | 
				
			||||||
%
 | 
					 | 
				
			||||||
%and _ t_varlist =
 | 
					 | 
				
			||||||
%  | NVar: 'a t_varlist
 | 
					 | 
				
			||||||
%  | CVar: 'a t_var * 'b t_varlist -> ('a * 'b) t_varlist
 | 
					 | 
				
			||||||
%
 | 
					 | 
				
			||||||
%and 'a t_equation = 'a t_varlist * 'a t_expression
 | 
					 | 
				
			||||||
%
 | 
					 | 
				
			||||||
%and _ t_eqlist =
 | 
					 | 
				
			||||||
%  | NEql: unit t_eqlist
 | 
					 | 
				
			||||||
%  | CEql: 'a t_equation * 'b t_eqlist -> ('a * 'b) t_eqlist
 | 
					 | 
				
			||||||
%
 | 
					 | 
				
			||||||
%and _ t_node =
 | 
					 | 
				
			||||||
%  | MakeNode:
 | 
					 | 
				
			||||||
%    ident
 | 
					 | 
				
			||||||
%    * 'i t_varlist * 'o t_varlist
 | 
					 | 
				
			||||||
%    * 'l t_varlist * 'e t_eqlist
 | 
					 | 
				
			||||||
%    -> ('i -> 'o) t_node
 | 
					 | 
				
			||||||
%
 | 
					 | 
				
			||||||
%type _ t_nodelist =
 | 
					 | 
				
			||||||
%  | NNode: unit t_nodelist
 | 
					 | 
				
			||||||
%  | CNode: ('a -> 'b) t_node * 'c t_nodelist -> (('a -> 'b) * 'c) t_nodelist
 | 
					 | 
				
			||||||
%	\end{minted}
 | 
					 | 
				
			||||||
\end{frame}
 | 
					\end{frame}
 | 
				
			||||||
\begin{frame}
 | 
					\begin{frame}
 | 
				
			||||||
	\begin{block}{Pros of using GADTs}
 | 
						\begin{block}{Pros of using GADTs}
 | 
				
			||||||
@@ -134,7 +97,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
\section{Passes}
 | 
					\section{Passes}
 | 
				
			||||||
\begin{frame}{Passes}
 | 
					\begin{frame}{Passes}
 | 
				
			||||||
	\begin{block}
 | 
						\begin{block}{Classification}
 | 
				
			||||||
		The passes of our compiler are functions of taking a program and either:
 | 
							The passes of our compiler are functions of taking a program and either:
 | 
				
			||||||
		\begin{itemize}
 | 
							\begin{itemize}
 | 
				
			||||||
			\item returning a program if the pass succeeded
 | 
								\item returning a program if the pass succeeded
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user