Browse Source

make better

master
Jonathan Leto 16 years ago
parent
commit
c1302f565a
  1. 49
      CreatingCPANModulesWithSWIG/pres.tex

49
CreatingCPANModulesWithSWIG/pres.tex

@ -33,18 +33,41 @@
\section{Philosophy}
\frame{
\frametitle{Don't Write Glue}
\begin{center}
\begin{columns}[t]
\begin{column}{5cm}
{\bf{XS = GLUE}}\\
\includegraphics[width=5.00cm, height=5.00cm]{xs_is_glue}
\end{column}
\begin{column}{5cm}
\includegraphics[width=5.00cm, height=5.00cm]{acmeglue}
\end{column}
\end{columns}
\end{center}
}
\frame{
\frametitle{Use an Integrating Pistol}
\begin{center}
\includegraphics[width=6.26cm, height=3.70cm]{integrating_pistol}\\
Need to integrate totally separate entities??\\
Integrate it instantly with the ACME Integrating Pistol!!
\end{center}
}
\section{Basics}
\subsection{Intro to XS}
\frame{
\frametitle{What is XS?}
\begin{itemize}
\item eXternal Subroutine
\item Large collection of macros which allow C/C++ method calls
\item Extremely verbose
\begin{itemize}
\item Math::GSL 0.10 has $\approx 274,000$ lines of XS
\end{itemize}
\item perldoc perlxs
\end{itemize}
}
\subsection{Intro to SWIG}
\frame{
\frametitle{What is SWIG?}
@ -53,22 +76,30 @@
\item Creates a scripting language API to a C/C++ library
\item 18 target languages supported
\item Reads header files and transforms datatypes between languages
\item Automatic argument type checking
\item Concise
\begin{itemize}
\item Math::GSL 0.10 has $\approx 500 $ lines of SWIG \\
which generates $\approx 274,000$ lines of XS
\end{itemize}
\end{itemize}
}
\frame{
\frametitle{SWIG Example Code}
::begin vim hack session::\\
\includegraphics[width=8.00cm, height=5.00cm]{gsl_typemaps}\\
::end vim hack session::\\
}
% \begin{center}
% \includegraphics[width=10cm,bb=0 0 1530 666]{ocb1.png}
% ocb1.png: 72dpi, width=40.96cm, height=19.90cm, bb=0 0 1161 564
% \end{center}
\frame{
\frametitle{Active Development Continues}
\begin{itemize}
\item Scientific Computing applications built on top of Math::GSL
\item foo
\item Scientific Computing applications built on top of Math::GSL
\item Full gsl\_function callback support
\item Static libraries and error handlers
\item Porting to Darwin and Solaris
\item Threads
\end{itemize}
}
@ -76,9 +107,11 @@
\frametitle{Thanks}
\begin{itemize}
\item Thierry Moisan
\item Eric Wilhelm
\item \#pdx.pm
\item Leslie Hawthorn and the Google Summer of Code crew
\item Leslie Hawthorn
\item The entire Google Summer of Code crew
\end{itemize}
}

Loading…
Cancel
Save