| 13 Oct 2025 |
piegames | In reply to @mangoiv.:matrix.org why I think this is a footgun and not an improvement:
foo |> bar is usually evaluated right to left, since bar is demanding foo in its body. So while in f# this might be a good idea since it is eagerly evaluated, it is not a good idea in lazy languages. I'm not sure if that's any evidence on this, but Haskell uses $ as the application operator, which is (conceptually) the same as <|. I get the argument, but I find it easier to think in data flow order and not evaluation order, and ideally evaluation order doesn't matter most of the time | 16:34:55 |
Coca | Why would the evaluation be a footgun in a lazy language? I can't really come up with any reasons myself since pipes are pretty isolated from the rest of the language, but I guess it could be seen as slightly inconsistent? | 17:31:00 |
MangoIV | The „ideally“ is very optimistic ime | 17:37:01 |
Marie | error: unable to download 'http://bootstrap-files.s3.marie.cologne/stdenv/powerpc-unknown-linux-gnu/hixzv290rwqf9l5ynqxb1qc9cg6a5r54/busybox': Could not resolve host: bootstrap-files.s3.marie.cologne (curl error code=6); retrying in 322 ms I'm so confused, I can resolve it just fine outside of nix | 18:37:18 |
raitobezarius | try --pasta-path "" as an option | 18:37:59 |
raitobezarius | do you have IPv6-only on that host? | 18:38:03 |
raitobezarius | and the resolver is IPv4-only? | 18:38:11 |
QuadRadical (Ping) | intnerestingly i cant reproduce with the other checks | 18:39:32 |
QuadRadical (Ping) | only with the nextest one | 18:39:35 |
Marie | that fixes it | 18:39:42 |
raitobezarius | what does your /etc/resolv.conf contains? | 18:39:58 |
Marie | but both host and resolver are dualstack | 18:40:00 |
raitobezarius | and do you have IPv4 connectivity? | 18:40:03 |
Qyriad | In reply to @coca162:matrix.org Why would the evaluation be a footgun in a lazy language? I can't really come up with any reasons myself since pipes are pretty isolated from the rest of the language, but I guess it could be seen as slightly inconsistent? So I don't think it's a footgun, but laziness is the reason it might matter. If B + C is a type error only when A is false, then if you evaluate A first you're fine, but if you evaluate that B + C first then evaluation errors and your build fails | 18:40:08 |
raitobezarius | ok | 18:40:09 |
raitobezarius | so you have resolver ::1 in /etc/resolv.conf ? | 18:40:16 |
raitobezarius | or resolver $ipv6 and resolver $ipv4 ? | 18:40:25 |
Marie | nameserver 127.0.0.53
options edns0 trust-ad
search .
| 18:40:41 |
raitobezarius | so your resolver is IPv4-only | 18:40:48 |
raitobezarius | can you send me | 18:41:01 |
Marie | yes | 18:41:18 |
raitobezarius | nix-build -E 'let pkgs = (import <nixpkgs> {}); in pkgs.runCommand "resolvconf" { outputHashAlgo = "sha256"; outputHashMode = "flat"; outputHash = pkgs.lib.fakeHash; } "cat /etc/resolv.conf"'
it shouldn't contain private information
| 18:41:21 |
Qyriad | Why does disabling pasta make v4-only not a problem? | 18:41:27 |