Top 1K Features Creators Events Podcasts Books Extensions Interviews Blog Explorer CSV

Guix Workflow Language

< >

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

#1818on PLDB 7Years Old
Homepage


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 Example Token
Comments ✓ ; A comment
Line Comments ✓ ; A comment ;
Semantic Indentation X
View source
- Build the next great programming language · About · Search · Keywords · Livestreams · Labs · Resources · Acknowledgements · Part of the World Wide Scroll