diff options
author | Justin Bedo <cu@cua0.org> | 2020-11-05 15:01:10 +1100 |
---|---|---|
committer | Justin Bedo <cu@cua0.org> | 2020-11-05 15:01:10 +1100 |
commit | a5b9e03485fa539846a8288137332ae124760064 (patch) | |
tree | 089a031a2bc55bb6835f9987d4ea71cffe644461 | |
parent | 0c90f9d717806f74fed79e1c26ee094654d506ba (diff) |
add slide on bionix
-rw-r--r-- | slides.tex | 24 |
1 files changed, 19 insertions, 5 deletions
@@ -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 |