morloc
@morloc-project.bsky.social
The project page for morloc, a language where you can compose functions across languages under a common type system
Here's an example of composable CLI/HTTP/TCP/socket Morloc tools: medium.com/@morloc/maki....
Making composable interfaces with Morloc
In this post, I will describe how to use Morloc to transform simple functional libraries into composable CLI tools, HTTP/TCP APIs, and UNIX…
medium.com
For seven years I have procrastinated writing proper error formatting. There was always something more pressing to do. But now it is finally here. Well, at least the formatting. Still more work needed to make the error analysis more informative.
Here is a template Morloc app. With a few more lines, we can pass in strongly-typed, polyglot Morloc libraries. I'll make a larger demo using an Elm-like architecture soon.
The #morloc paper is now available on @PeerJCompSci peerj.com/articles/cs-.... Huge thanks to the two reviewers and the PeerJ editors!
morloc: 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...
peerj.com
Release #morloc v0.58.2! Now docstrings can specify how CLIs are generated. Arguments may be optional and have defaults. Records can be translated to groups of arguments.
*multi-line strings* allow triple-quotes to enclose strings that span multiple lines and automatically trims whitespace. See example below where the trimmed whitespace is highlighted:
*string interpolation* allows #morloc expressions to be substituted into strings. Currently the behavior is quite minimal and works only for expressions that evaluate to strings. In the future more formatting options will be added.
*placeholder syntax* allows expressions with underscores to be translated into lambas expression. For example:
Releasing Morloc version 0.57.1! There are 5 major new features: placeholder syntax, string interpolation, multi-line strings, and getter and setter patterns. I'll introduce all of each of these in dedicated posts.
Releasing #morloc v0.55.1! Many bug fixes and a whole new module system. Also, here's one test suite running in three languages:
#morloc meetup this Saturday and Tuesday are canceled, we'll resume the week after. I've been under the rocks trying to fix Morloc's language selection algorithm -- brain's too fried to English. Also, I've been thinking about strongly typed functional programming and AI. #hackathon #foreshadowing
Meetup tomorrow at 5pm ET (Aug 19). I'll introduce the install manager, review the composable CLI tools from last week and demo a FASTQ trimmer. I'd also like to hear your thoughts on what #morloc would need for you to use it in your workplace. See you on discord: t.co/PBu4CyrvZe
#morloc #meetup today at 1pm ET (Sat, Aug 16)! We'll talk about composable CLI tools and the new installation manager. Anyone is welcome, just show up and join the public chat. On Discord: discord.gg/dyhKd9sJfF
Join the morloc Discord Server!
Check out the morloc community on Discord - hang out with 14 other members and enjoy free voice and text chat.
discord.gg
#morloc now has an install script that streamlines container installation, container selection (podman or docker), morloc home setup, and executable generation. See the GitHub repo (github.com/morloc-proje...) and the manual (morloc-project.github.io/docs/#_insta...).
Almost got the #Treesitter grammar working! github.com/morloc-proje... Just needs a little cleaning and testing. Next I can do a little PR to GitHub and then will finally have colors in my repo code. This also can be used in editors like Zed and Neovim.
🌟 Huge thanks to everyone who joined the first virtual #morloc #hackathon yesterday! We spent the day beta-testing the Morloc language, smoothing out install issues and running our first programs together. 🚀 Morloc execution is now tested on Linux, MacOS, and Windows (via WSL)!
Sharing the #morloc language! Compose functions across languages under a common type system. In #bioinformatics, build better workflows by switching from the file/application-based paradigm to a native function paradigm. Looking for adventurous first adopters! [Paper pre-release](shorturl.at/q10tO)
ZWA
shorturl.at