Live data from Hacker News

Launch HN: Moonrepo (YC W23) – Open-source build system

news.ycombinator.com

171–176 of 176 posts

Re: Launch HN: Moonrepo (YC W23) – Open-source build system

#171
post #87

Earlier quoted context omitted.

Glad to hear it! To synthesis my comment down (because it's easier once I've written it once, poorly): The complexity you see in Bazel/Buck/Pants build files may seem like a result of their decision to use a programming language. That's a red herring. That complexity is fundamental to the problems people need to solve to build software. If you remove the ability to solve it in your build system the complexity will mo…

+1 Glad someone else brought up this topic and phrased it way better than I ever could have! This other comment further down puts it very well, too: https://news.ycombinator.com/item?id=34892724 > If you remove the ability to solve it in your build system the complexity will move to other systems. Adding to this: I think one of the main limitations of purely declarative (e.g. YAML-based) configurations is that a decl…

Well thought and I can imagine this can be further differentiated. E.g. what is considered boundaries or limits in a declarative way also work as guardrails. So while it could be possible to hit actual limits on day one, there is often more than only two options to go on. Declarative for me often appears easier to find the correct one or to correctly know that that system is not designed to do that.

The other differentiation I think is worth on the following part, also which I'd liked a lot btw:

> move [the complexity] to other systems

which stemmed from:

> If you remove the ability to solve it in your build system the complexity will move to other systems.

I think it is even _more_ beneficial to consider that this does not start at the build system:

If you don't have and don't add the ability at development (make it a property of the project), the complexity will continue to _increase_ each time you move it into other systems after it (build, version control, CI, ... etc.).

Re: Launch HN: Moonrepo (YC W23) – Open-source build system

#172
post #31

Earlier quoted context omitted.

Gotcha, understood. Mirroring @Denzel's edit, I think that rationale makes sense for configuring some of the intermediate glue which is project-specific. For instance, running test suites, orchestrating deployment, and other more custom actions which aren't terribly reusable across projects (think Bazel's 'genrule'). Caching test results in a distributed way is a great use case, and environment isolation (i.e. withou…

I don't disagree here. At the moment, moon leans closer to a task runner, with hashing, incremental caching, and other features tacked on. All of our currently supported languages are not compile based languages, and run with pre-built binaries. Once we starts supporting more languages, especially compile based ones (probably Rust first), our decision around YAML will probably change. Off the top of my head, a non-YA…

Once you get traction the pressure to not change configuration formats will increase, not decrease. You'll be stuck.

Re: Launch HN: Moonrepo (YC W23) – Open-source build system

#173

Earlier quoted context omitted.

We chose YAML for a few reasons. The first being that we wanted a format that is basically universally supported everywhere. This filtered down to JSON, TOML, and YAML. JSON is an awful configuration format, so that was a no go. TOML is pretty great, but is also not very ubiquitous. That left us with YAML. The second reason is we wanted something language agnostic and not proprietary. It also helps that many other to…

> The second reason is we wanted something language agnostic and not proprietary. You will end up developing your own yaml-based DSL that is incompatible with everything else, has weird limitations and poorly documented constraints... just like any other YAML-based system. And by the time you'll have written a 1000-line YAML (where half of the file is nothing more than awkwardly quoted and escaped bash scripts) and r…

Oh, you too have used Ansible? :-D

Re: Launch HN: Moonrepo (YC W23) – Open-source build system

#175
post #174

Your logo and especially your favicon look very similar to the Lua programming language imagery.

Also: https://moonscript.org/ :-)

For sure! Reading the title, I thought moonrepo and moonbase were projects for MoonScript.

Re: Launch HN: Moonrepo (YC W23) – Open-source build system

#176
post #12

Earlier quoted context omitted.

It took me three readthroughs to notice as well, but the name is actually `moonrepo` not `monorepo`.

try googling for it... spell check autocorrect is killing it.

Shows up fine for me
Post reply on HN