HNHacker News
TopNewBestAskShowJobs

arendsee

5 karma · joined July 30, 2021

submissionscomments
arendsee··on Show HN: Which of your secrets did your coding agent send?
One small comment, in the README, I'd suggest less is more. Keep the code gifs, trim the other content down to a few lines. Then link to docs. The README looks a bit like an AI dump.
arendsee··on CLI tools have always been broken
FYI, here's the missing Morloc link: https://github.com/morloc-project/morloc
arendsee··on CLI tools have always been broken
A standard would be a document specifying how a CLI should be written. Best practices, like a style guide stating that every CLI tool should have a --json-help option for machine readable usage.

Morloc is a compiler. The entire hand-written interface, the source of the inconsistency, disappears. It is not a standard anymore than gcc is a standard that determines how machine code is written.

Also standards have no teeth. If you compile a Morloc program, you don't have to assume the creator followed a convention, you have a guarantee from the compiler.

Every Morloc module can be compiled into a CLI with well-typed inputs and outputs, checked at runtime, with usage descriptions that follow from their types. They are also importable as modules into other Morloc languages, where the exported functions can natively composed. And they can be used as APIs serving HTTP/TCP/sockets or as MCPs. One typed module with many faces. This isn't a standard. It's a language, compiler and build ecosystem.

Anyway, Morloc is my baby and I always love talking about it, but this problem with CLIs is a more general issue that many are blind to. What other solutions are there? Do we really want to continue rely on writing wrappers around idiosyncratic interfaces?

arendsee··on CLI tools have always been broken
TLDR: CLI tools are fine for terminal interactive use, but problematic as building blocks in workflows and tooling ecosystems. The linked post describes the problem and proposes a new solution: strip our CLIs to their functional cores and generate the interfaces with the Morloc language compiler.
arendsee··on Morloc: Foreign languages unified under common functional type system
As the morloc developer, I can tell you OOP support is in the pipeline (and there is some support now).

A proper reply to this comment would fill a very long blog post, and I'm currently on vacation, so I'll have to get back to you later.

arendsee··on Morloc: Foreign languages unified under common functional type system
At the moment, it is just these three languages (and partial Rust support). I'll start adding new languages once the type system is more stable.
arendsee··on Morloc: Foreign languages unified under common functional type system
You can also look at the .travis.yml file. It contains the instructions for installing everything needed to run all tests on Ubuntu.
arendsee··on Morloc: Foreign languages unified under common functional type system
That is a very good question. Currently effects are outside the typesystem, but I'm planning on adding an algebraic effect system similar to the one used in Microsoft's Koka language.
arendsee··on Morloc: Foreign languages unified under common functional type system
Morlock's are also the creatures that manage the machines under the world in Well's Time Traveler novel. Though I guess they are known more for their dietary preferences.