aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJustin Bedo <cu@cua0.org>2020-11-05 15:01:10 +1100
committerJustin Bedo <cu@cua0.org>2020-11-05 15:01:10 +1100
commita5b9e03485fa539846a8288137332ae124760064 (patch)
tree089a031a2bc55bb6835f9987d4ea71cffe644461
parent0c90f9d717806f74fed79e1c26ee094654d506ba (diff)
add slide on bionix
-rw-r--r--slides.tex24
1 files changed, 19 insertions, 5 deletions
diff --git a/slides.tex b/slides.tex
index ec14f08..fc09a6d 100644
--- a/slides.tex
+++ b/slides.tex
@@ -113,13 +113,15 @@
\end{minipage}
\end{frame}
+\againframe<4>{dag}
+
\begin{frame}
\frametitle{BioNix contributions}
\begin{enumerate}
\item Builds on Nix, a robust functional package manager
- \item Manages both software and workflows within the one system
+ \item Manages both software, data, and workflows within the one system
\item Implicitly specifies its entire computational environment
- \item Simple, purely functional domain-specific language, simplifying specifying workflows
+ \item Purely functional domain-specific language, simplifying specifying workflows
to function composition
\item Typing to reduce errors~\autocite{Bed2019}
\end{enumerate}
@@ -130,10 +132,24 @@
\begin{enumerate}
\item Simple configuration language (like JSON + functions)
\item Build engine that \emph{realises} \emph{derivations}
+ \begin{itemize}
+ \item resumption
+ \item error handling
+ \item logging
+ \item parallelisation
+ \end{itemize}
\item Derivations are complete descriptions for producing build products: all inputs and a build recipe
\item Controlled \emph{side effects}\footnote{stuff not captured by the derivation}: none allowed during a build
\item Output location unique and determined by hashing the derivation: i.e., hash based version management
- \item Deterministic $\Rightarrow$ reproducible
+ \end{enumerate}
+\end{frame}
+
+\begin{frame}
+ \frametitle{What is BioNix?}
+ \begin{enumerate}
+ \item Thin wrapper on Nix
+ \item Models \emph{stages}\footnote{the execution of one or more executables on one or more input files, producing one or more output files.} as functions (\texttt{config → inputs → drv})
+ \item Library of bioinformatics tools (BWA, samtools, etc)
\end{enumerate}
\end{frame}
@@ -151,8 +167,6 @@
\end{minipage}
\end{frame}
-\againframe<4>{dag}
-
\begin{frame}
\frametitle{Demo}
\pause