;;
;; CWL generator
;;
;; This file implements a generator to generate CWL files.
(define-module (generate-cwl)
#:use-module (rnrs records syntactic)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-71)
#:use-module (ice-9 match)
#:export (clitool
workflow
input
output
step
workflow-output))
(define-record-type ( make-input input?)
(fields (immutable id input-id)
(immutable type input-type)
(immutable default input-default)
(immutable label input-label)
(immutable other input-other)))
(define-record-type unspecified-default)
(define* (input id #:key type label (default (make-unspecified-default)) (other '()))
"Build and return an object."
(make-input id type default label other))
(define-record-type (