I find it amazing how skeptical scala devs are of source deps, but rust, haskell and many other communities seem to use them just fine.
-
-
Replying to @posco @alxarchambault
I’m pretty much on board, but it’s important to be precise. Publishing will not go away unless you’re working in a silo company that has no need to share artifacts with the rest of the world (which is pretty exceptional).
1 reply 0 retweets 2 likes -
Replying to @jvican @alxarchambault
I don't think so. Builds are usually simple. I think we could easily design a standard way to describe dependencies and compilation flags other than sharing compiler output. Approximately zero effort has been expended on this compared to the effort on sharing binary artifacts.
1 reply 0 retweets 2 likes -
Replying to @posco @alxarchambault
I challenge your assumption that builds are simple. Builds are incredibly complicated, especially in the Scala world, because we’re used to move all the infrastructure/checks/release management to the build tool side. This doesn’t happen in other communities, but it does in ours.
3 replies 0 retweets 3 likes -
Builds are simple in the bazel and pants world, sure, but migrating from a complex build to a simple one takes not only time but expertise that people don’t usually have.
1 reply 0 retweets 0 likes -
Replying to @jvican @alxarchambault
I think it can be done mostly with tooling. Build should be about expressing dependencies and the options to the compiler to build the code. End of story. All the other scripting that has been tacked on is not good design in my view. We need to factor the build problem out.
1 reply 0 retweets 4 likes -
Replying to @posco @alxarchambault
I agree on the factoring but precisely because tools like bazel have such a generic purpose build graph they will become beasts at the end that will do everything. So I’m not sure we’re headed to that refactoring you mention. The only novel thing is that removing binaries...
1 reply 0 retweets 0 likes -
...actually removes a lots of complexity of the core of the build tool. But that’s pretty much it, everything else stays.
2 replies 0 retweets 0 likes -
Replying to @jvican @alxarchambault
Well, I guess we can disagree. I am interested to see that many people seem frustrated enough with the status quo that we are seeing several alternatives. I guess people who are happy don't need to worry, but I'm hopeful we can make some real progress in alternative directions.
1 reply 0 retweets 1 like -
Replying to @posco @alxarchambault
Don’t take me wrong, I’m happy to see that progress. Despite all the experimentation going on, I still believe bazel/pants are the safest bets because they are multi language. I’m just skeptical about your claim bazel revolutionizes builds further than using source deps
1 reply 0 retweets 2 likes
The biggest simplification I've found is to make build graphs static. I would say that the cost of allowing code to construct the graph is high, and I don't believe it's needed for the vast majority of Scala builds.
-
-
Yeah, bazel has static (applicative!) graphs too. I think it is worth the trade. Query is nice and fast, you can make the nice UIs your demo has. I think Monadic is too powerful in the general case. It might be worth it to have it in the toolbox, but somehow strongly discourage.
1 reply 0 retweets 4 likes -
Replying to @posco @propensive and
The advantage in grokkability in bazel comes not from the applicative rules (imo), but rather from the separation between BUILD files (which are restricted enough to be considered data), from logic (in bzl files).
2 replies 0 retweets 1 like - Show replies
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.