You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
120 lines
3.0 KiB
120 lines
3.0 KiB
\documentclass[12pt]{beamer}
|
|
\usepackage{beamerthemeHannover, graphicx, clrscode, amsmath, amssymb, multicol}
|
|
\usepackage{verbatim}
|
|
\setbeamercolor{sidebar}{use=structure,bg=gray!60!green}
|
|
\title{PL/Parrot \\ \small{ Embedding the Parrot Virtual Machine in PostgreSQL } }
|
|
\author[Leto+Fetter]{Jonathan "Duke" Leto and David Fetter}
|
|
\date{}
|
|
|
|
\begin{document}
|
|
|
|
\frame{
|
|
\titlepage
|
|
\begin{center}
|
|
\end{center}
|
|
}
|
|
|
|
\frame{
|
|
\frametitle{Parrot Virtual Machine}
|
|
\begin{center}
|
|
\begin{itemize}
|
|
\item Process (Application) Virtual Machine
|
|
\item Register-based
|
|
\item Continuation Passing Style
|
|
\item Design Goals
|
|
\begin{itemize}
|
|
\item Pluggable
|
|
\item Interoperable
|
|
\item Dynamic
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{center}
|
|
}
|
|
|
|
\frame{
|
|
\frametitle{Why Embed Parrot VM in PostgreSQL?}
|
|
\begin{center}
|
|
\begin{itemize}
|
|
\item PL's are (very) hard to write and maintain
|
|
\item Framework for DSL's
|
|
\item Platform independent, fast, stored procedures
|
|
\item Allow various PL's to communicate
|
|
\item Freeze/thaw subtransaction-level states
|
|
\end{itemize}
|
|
\end{center}
|
|
}
|
|
|
|
\frame{
|
|
\frametitle{History of PL/Parrot}
|
|
}
|
|
|
|
\frame{
|
|
\frametitle{Current Features}
|
|
\begin{itemize}
|
|
\item PL/PIR(U)
|
|
\item Pass and return basic datatypes
|
|
\item Basic security model (Don't do that)
|
|
\item Growing Test Suite
|
|
\item Enthusiastic and friendly community
|
|
\end{itemize}
|
|
}
|
|
|
|
\frame{
|
|
\frametitle{Bugs}
|
|
\begin{itemize}
|
|
\item Documentation
|
|
\item SPI
|
|
\item Triggers
|
|
\item Parrot Bugs
|
|
\begin{itemize}
|
|
\item IMCC Syntax Errors
|
|
\item Loading libraries from Embed API
|
|
\item Security API
|
|
\end{itemize}
|
|
\end{itemize}
|
|
}
|
|
|
|
\frame{
|
|
\frametitle{Example Code}
|
|
\includegraphics[width=9.5cm, height=3.6cm]{plparrot_example_code}
|
|
}
|
|
|
|
|
|
\frame{
|
|
\frametitle{Future Goals}
|
|
\begin{itemize}
|
|
\item PL/Rakudo - Perl 6 in your database!
|
|
\item PL/Pynie - Python in your Parrot in your database!
|
|
\item Tools to help create a new DSL with PL/Parrot
|
|
\end{itemize}
|
|
}
|
|
|
|
\frame{
|
|
\frametitle{Get involved!}
|
|
\begin{itemize}
|
|
\item Try PL/Parrot on your system and submit detailed bug reports
|
|
\item Fork on github and hack on stuff!
|
|
\item Help with GitHub Issues
|
|
\end{itemize}
|
|
}
|
|
|
|
\frame{
|
|
\frametitle{ Thanks }
|
|
\begin{itemize}
|
|
\item PL/Parrot team: Joshua Tolley, David E. Wheeler, Daniel Arbelo Arrocha + others
|
|
\item Everyone working on Parrot VM and PostgreSQL
|
|
\end{itemize}
|
|
}
|
|
|
|
\frame{
|
|
\frametitle{ Resources }
|
|
\begin{center}
|
|
\begin{itemize}
|
|
\item http://github.com/leto/plparrot
|
|
\item \#plparrot on freenode
|
|
\item http://parrot.org
|
|
\item @parrotvm / !parrot on twitter/identi.ca
|
|
\end{itemize}
|
|
\end{center}
|
|
}
|
|
\end{document}
|
|
|