Measures Concepts
GitHub icon

Guix Workflow Language

Guix Workflow Language - Programming language

< >

Guix Workflow Language, aka Guix Workflow Language, is a programming language created in 2017.

#1058on PLDB 7Years Old


Example from the web:
;; https://www.guixwl.org/extended-start ;; We are going to extend the workflow defined in the file ;; "example-workflow.w". define dynamic-workflow load-workflow "/tmp/examples/example-workflow.w" process: (list-file-template filename) name string-append "list-file-" basename filename packages "gzip" inputs filename outputs string-append filename ".list" run-time complexity space 20 mebibytes time 30 seconds # { gzip --list {{inputs}} > {{outputs}} } ;; Get all processes of the other workflow. define foreign-processes workflow-processes dynamic-workflow ;; Get the processes that we want to extend on. define compress-file-processes processes-filter-by-name foreign-processes "compress-file" ;; Create the new processes. define list-file-processes map list-file-template append-map process-outputs compress-file-processes workflow: extended-dynamic-workflow processes append ;; These are the process connections of the imported workflow workflow-restrictions dynamic-workflow ;; And these are the new process connections. The "zip" procedure ;; pairs up each of the processes in "list-file-processes" with ;; one of the processes in "compress-file-processes". zip list-file-processes compress-file-processes

Language features

Feature Supported Token Example
Comments ✓
; A comment
Line Comments ✓ ;
; A comment
Semantic Indentation X

View source

- Build the next great programming language · Search · Add Language · Features · Creators · Resources · About · Blog · Acknowledgements · Queries · Stats · Sponsor · Day 605 · feedback@pldb.io · Logout