| 11 Nov 2025 |
raitobezarius |
Clarification: by "the whole thing" you're referring to pointer equality?
i'm referring to the maximal sharing work that was done in Lix | 15:04:01 |
raitobezarius | *
Clarification: by "the whole thing" you're referring to pointer equality?
i'm referring to the maximal (well it's not exactly maximal) sharing work that was done in Lix | 15:04:09 |
raitobezarius |
Wouldn't what we can expose be super dependent on implementation details?
idk, we can formalize what is pointer equality | 15:04:28 |
raitobezarius | we can offer recursive pointer equality, one-off pointer equality, sharing pointer equality, etc. | 15:04:45 |
raitobezarius | We could also consider making functions comparable | 15:04:53 |
raitobezarius | like $$\alpha$$-equivalence of lambda terms via bisimilarity or idk | 15:05:10 |
raitobezarius | * like $$\alpha$$-equivalence of lambda terms via bisimulation or idk | 15:05:16 |
KFears (burnt out) | I think there are many various ways to compare functions that can be useful in different contexts (string comparison, signature comparison, evaluated comparison, pointer comparison), and it might be weird to prefer one over another. Maybe having no "default" comparison but having options to choose from would be best? | 17:42:38 |
raitobezarius | I did https://wiki.lix.systems/books/lix-contributors/page/pointer-equality to expand my thoughts and current understanding | 18:07:04 |
raitobezarius | I feel like there's two directions from the current local optimum (?) we are, kicking function equality out of the language, figuring how far we are willing to go to repair lack of structural equality for complicated types like functions | 18:08:20 |
raitobezarius | pennae are more in favor of kicking the thing out because there's no practical value to offer a real == for fns | 18:08:47 |
raitobezarius | i was in favor of making == for functions complete, i.e. recursive ptr equality + semantic check if ptr equality fails | 18:09:07 |
raitobezarius | but i sat down and looked how to do it and noped out | 18:09:17 |
Sergei Zimmerman (xokdvium) | Quip: nix eval "github:nixos/nixpkgs?rev=a999c1cc0c9eb2095729d5aa03e0d8f7ed256780#pkgsCross.gnu64.bitwarden" --no-eval-cache. This wasn’t a regression and doesn’t evaluate under any nix impl. It was the case where nixpkgs machinery thought that it was doing this in cross and thus failed to eval | 18:09:42 |
raitobezarius | aaaaaaaaah thanks | 18:09:54 |
raitobezarius | well the other thing was a regression no? | 18:10:00 |