<tt>morloc</tt> : a workflow language for multi-lingual programming under a common type system

A conventional scientific workflow consists of many applications with untyped data flowing between them. Each application builds an internal data structure from input files, performs an operation, and writes output files. In practice, there are many data formats and many flavors of each. Compensating for this requires either highly flexible parsers on the application side or extra interface code on the workflow side. Further, the idiosyncrasies of wrapped applications limit the expressiveness of workflow languages; higher order functions, generics, compound data structures, and type checking are not easily supported. An alternative approach is to create a workflow within a single programming language using native functions rather than standalone applications. This offers programmatic flexibility, but mostly limits usage to one language. To address this problem, we introduce morloc : a language that supports efficient function composition between languages under a common type system. morloc gives the workflow designer the power of a modern functional language while allowing the nodes of the workflow to be written freely in any supported language as idiomatic functions of native data types.

Authors

Publication Details

Journal
PeerJ Computer Science
Published
2026-01-02
DOI
https://doi.org/10.7717/peerj-cs.3435
Primary Topic
Scientific Computing and Data Management
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

<tt>morloc</tt> : a workflow language for multi-lingual programming under a common type system

Zebulun Arendsee
PeerJ Computer Science
Scientific Computing and Data Management
article

<tt>morloc</tt> : a workflow language for multi-lingual programming under a common type system

Zebulun Arendsee
article en

Abstract

A conventional scientific workflow consists of many applications with untyped data flowing between them. Each application builds an internal data structure from input files, performs an operation, and writes output files. In practice, there are many data formats and many flavors of each. Compensating for this requires either highly flexible parsers on the application side or extra interface code on the workflow side. Further, the idiosyncrasies of wrapped applications limit the expressiveness of workflow languages; higher order functions, generics, compound data structures, and type checking are not easily supported. An alternative approach is to create a workflow within a single programming language using native functions rather than standalone applications. This offers programmatic flexibility, but mostly limits usage to one language. To address this problem, we introduce morloc : a language that supports efficient function composition between languages under a common type system. morloc gives the workflow designer the power of a modern functional language while allowing the nodes of the workflow to be written freely in any supported language as idiomatic functions of native data types.

PeerJ Computer ScienceVol. 12
Openalex Percentile: Top 99%
Scientific Computing and Data Management
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

<tt>morloc</tt> : a workflow language for multi-lingual programming under a common type system — Zebulun Arendsee · PeerJ Computer Science (2026) | TGRS Research Map | TGRS