3 ms·
> They are not mutable.. their configuration is. That's just a mutable task with more steps. If I create a task and then later can reconfigure that task, that'
by shaftway 4y ago
> They are not mutable.. their configuration is.
That's just a mutable task with more steps. If I create a task and then later can reconfigure that task, that's a mutable task. Arguing that it happens during the configuration phase is just semantics. It's still mutable and action-at-a-distance.
Is there another popular build system that allows this?
> Also, people should just learn to write plugins - that’s the proper way to add functionality.
I'm not sure I agree. It puts your weird behavior inside an opaque binary. If your plugin needs any sort of configuration whatsoever then you've got a ton of boilerplate to write to make the DSL "just work". The original article actually calls this out:
> The whole idea of using community-developed plugins becomes a minefield because the chance of them applying all of the concepts completely correctly is essentially 0%, meaning you might be okay as long as you’re only doing basic stuff, but as soon as you stray off the beaten path stuff starts breaking and you have almost no chance to fix it properly yourself.
I don't see any reason why I'd be better at writing a plugin than other people in the community.