PLDB
Languages Features Calendar CSV Lists Blog About Sponsor Add Language
GitHub icon

CWL

CWL

CWL is a pl created in 2014 by Luka Stojanovic.

#404on PLDB 8Years Old 1.1kUsers
0Books 0Papers 464Repos

The Common Workflow Language (CWL) is a specification for describing analysis workflows and tools in a way that makes them portable and scalable across a variety of software and hardware environments, from workstations to cluster, cloud, and high performance computing (HPC) environments. CWL is designed to meet the needs of data-intensive science, such as Bioinformatics, Medical Imaging, Astronomy, Physics, and Chemistry.


Example from Linguist:
#!/usr/bin/env cwl-runner # Originally from # https://github.com/Duke-GCB/GGR-cwl/blob/54e897263a702ff1074c8ac814b4bf7205d140dd/utils/trunk-peak-score.cwl # Released under the MIT License: # https://github.com/Duke-GCB/GGR-cwl/blob/54e897263a702ff1074c8ac814b4bf7205d140dd/LICENSE # Converted to CWL v1.0 syntax using # https://github.com/common-workflow-language/cwl-upgrader # and polished by Michael R. Crusoe <mrc@commonwl.org> # All modifications also released under the MIT License cwlVersion: v1.0 class: CommandLineTool doc: Trunk scores in ENCODE bed6+4 files hints: DockerRequirement: dockerPull: dukegcb/workflow-utils inputs: peaks: type: File sep: type: string default: \t outputs: trunked_scores_peaks: type: stdout baseCommand: awk arguments: - -F $(inputs.sep) - BEGIN{OFS=FS}$5>1000{$5=1000}{print} - $(inputs.peaks.path) stdout: $(inputs.peaks.nameroot).trunked_scores$(inputs.peaks.nameext)

Language features

Feature Supported Example Token
Comments
# A comment
Line Comments
# A comment
#
Semantic Indentation ϴ
closure-templates.html · common-workflow-language.html · true-basic.html

View source

PLDB - Build the next great programming language · v2022 · Day 32 · Docs · Build · Acknowledgements · Traffic Today · Traffic Trends · Mirrors · GitHub · feedback@pldb.com