Snakemake is a novel workflow engine with a simple Python-derived workflow definition language and an optimizing execution environment. It is the first system that supports multiple named wildcards (or variables) in input and output filenames of each rule definition. It also allows to write human-readable workflows that document themselves. We have found Snakemake especially useful for building high-throughput sequencing data analysis pipelines and present examples from this area. Snakemake exemplifies a generic way to implement a domain specific language in python, without writing a full parser or introducing syntactical overhead by overloading language features.

Additional Metadata
Persistent URL
Series OpenAccess Series in Informatics
Conference German Conference on Bioinformatics
Köster, J, & Rahmann, S. (2012). Building and documenting workflows with Python-based Snakemake. In OpenAccess Series in Informatics. doi:10.4230/OASIcs.GCB.2012.49