Bazel can now build Haskell
tweag.io
Bazel can now build Haskell
1–10 of 54 posts
Re: Bazel can now build Haskell
#2By "replacement", I mean picking up a random open source project and being able to do the equivalent of:
./configure
make
make install
To be able to build and run the app directly from sources, when needed.
Right now, it's a mess, the "replacement" is:
curl whatever.io | sudo bash
Re: Bazel can now build Haskell
#3Re: Bazel can now build Haskell
#4Given that Nix is already popular in the Haskell ecosystem and it's also polyglot, why not build the monorepo with that instead of Bazel?
Re: Bazel can now build Haskell
#5Given that Nix is already popular in the Haskell ecosystem and it's also polyglot, why not build the monorepo with that instead of Bazel?
Re: Bazel can now build Haskell
#6Given that Nix is already popular in the Haskell ecosystem and it's also polyglot, why not build the monorepo with that instead of Bazel?
Re: Bazel can now build Haskell
#7Re: Bazel can now build Haskell
#8A significant hurdle for the universal adoption of Bazel is its too many dependencies.
sudo apt-get install pkg-config zip g++ zlib1g-dev unzip python
That's a fair few things, but it doesn't see that awful. None of those dependencies seem exotic. I wonder if they could get rid of Python by using Jython on top of the JDK.
Re: Bazel can now build Haskell
#9I wonder if Bazel takes off across many languages. It wouldn't hurt to have a modern autotools & co. replacement across ecosystems. I don't think it's doable, considering the fact that we have language specific package managers and build tools, but you never know. By "replacement", I mean picking up a random open source project and being able to do the equivalent of: ./configure make make install To be able to build…
For that, Bazel needs someone to write all the necessary configs, and make them available out-of-the box, with sane presets baked-in.
You can look at Angular team's working on integrating Bazel into their build process, here's the repo: https://github.com/alexeagle/angular-bazel-example
There's:
- build.bazel
- Workspace
And then there are rules that have to be included and/or developed:
- nodejs rules, https://github.com/bazelbuild/rules_nodejs
- sass rules https://github.com/bazelbuild/rules_sass
- typescript rules: https://github.com/bazelbuild/rules_typescript
etc.
And those rules have to be not only loaded, but specific steps from those rules have to be invoked (see WORKSPACE).
I'd say there still still a lot of configuration involved in setting up all the moving pieces. Will it get better? Hopefully (there are just not enough good/decent build tools).
Re: Bazel can now build Haskell
#10I wonder if Bazel takes off across many languages. It wouldn't hurt to have a modern autotools & co. replacement across ecosystems. I don't think it's doable, considering the fact that we have language specific package managers and build tools, but you never know. By "replacement", I mean picking up a random open source project and being able to do the equivalent of: ./configure make make install To be able to build…
https://github.com/bazelbuild/rules_typescript
I don't see why this wouldn't be extensible to other languages with similar build systems. In practice, I find it useful to think of Bazel as a scripting languages that works when commands generate reproducible output files.