!lymvtcwDJ7ZA9Npq:lix.systems

Lix Development

424 Members
(Technical) development of Lix, the package manager, a Nix implementation. Please be mindful of ongoing technical conversations in this channel.140 Servers

Load older messages


SenderMessageTime
23 Mar 2026
@blokyk:matrix.orgzoë (she/her) *

(i am somewhat reminded of the line i saw in last month's core team meting:

We wonder if we should have more boring people in our project

and seeing everyone's very interesting ideas compared to just the "nix is fun :D functional programming is fun :D if only haskell $ operator tho :( and also not cursed :((" idea i have definitely makes me kinda resonate with that line (which, obviously no problem with that, i am a pretty boring person in general) x)

22:52:06
@blokyk:matrix.orgzoë (she/her)

also a proper type system would instant fix this entire class of issues

yeah, nix's lack of a type system is probably my biggest gripe with it; even stripping the cursed/badly designed parts of it, the dynamic nature makes writing nix just landmine after landmine

22:52:57
@blokyk:matrix.orgzoë (she/her)anyway i do agree with the solution of making externally-caused errors uncatchable, that makes complete sense to me; it's really mostly runtime errors that annoy me22:55:47
@blokyk:matrix.orgzoë (she/her)* anyway i do agree with the solution of making externally-caused errors uncatchable, that makes complete sense to me; it's really mostly runtime errors that frustrate me22:55:52
@blokyk:matrix.orgzoë (she/her)i really shouldn't have been, but i was genuinely surprised that the actual evaluator uses c++ exceptions to propagate eval/user-facing errors, instead of using a result type; it just felt... dirty. again, really shouldn't have been surprised, it is the nix codebase after all x)22:58:57
@raitobezarius:matrix.orgraitobezariusmy lawyer does not allow me to comment on these matters22:59:15
@blokyk:matrix.orgzoë (she/her)xD22:59:23
@blokyk:matrix.orgzoë (she/her)fair enough22:59:30
@raitobezarius:matrix.orgraitobezariusit's important to imagine Nix as a 20 years old technology22:59:43
@piegames:flausch.socialpiegames
In reply to @blokyk:matrix.org
i really shouldn't have been, but i was genuinely surprised that the actual evaluator uses c++ exceptions to propagate eval/user-facing errors, instead of using a result type; it just felt... dirty. again, really shouldn't have been surprised, it is the nix codebase after all x)
To be fair: try using Result types in C++ in 2005
22:59:47
@raitobezarius:matrix.orgraitobezariusit's also important to imagine that (technical) debt payment have not been popular23:00:11
@blokyk:matrix.orgzoë (she/her)i know i know, nix's 2000s-phd-thesis nature keeps catching up to it23:00:21
@raitobezarius:matrix.orgraitobezarius* it's also important to imagine that (technical) debt payment has not been popular23:00:22
@blokyk:matrix.orgzoë (she/her)* i know i know, i've very much noticed that nix's 2000s-phd-thesis nature keeps catching up to it :|23:00:52
@blokyk:matrix.orgzoë (she/her)* i know i know, i've very much noticed that nix's 2000s-phd-thesis nature keeps catching up to it :(23:00:54
@blokyk:matrix.orgzoë (she/her)* i know i know, i've very much noticed that nix's 2000s-phd-thesis nature keeps catching up to it :/23:00:55
@blokyk:matrix.orgzoë (she/her)* i know i know, i've very much noticed that nix's 2000s-phd-thesis nature keeps catching up to it :|23:00:57
@blokyk:matrix.orgzoë (she/her)* i know i know, i've very much noticed that nix's 2000s-phd-thesis nature keeps catching up to it :/23:01:01
@blokyk:matrix.orgzoë (she/her)* i know i know, i've very much noticed that nix's 2000s+phd-thesis nature keeps catching up to it :/23:03:13
@blokyk:matrix.orgzoë (she/her) *

(i am somewhat reminded of the line i saw in last month's core team meting:

We wonder if we should have more boring people in our project

and seeing everyone's very interesting ideas compared to just the "nix is fun :D functional programming is fun :D if only haskell $ operator tho :( and also not cursed :((" idea i have definitely makes me kinda resonate with that line (which, yeah i am objectively a pretty boring person) x)

23:23:43
@blokyk:matrix.orgzoë (she/her) * with all that said, i still do have a question: should it be tagged E/Easy (with the notes from this discussion) and left to be first-time/drive-by contributed? it's not very urgent, and though it doesn't go into the c++ part of the codebase like most other changes will require, i still think it can be a good exercise, especially if combined with some tests 23:38:22
24 Mar 2026
@blokyk:matrix.orgzoë (she/her) *

(i am somewhat reminded of the line i saw in last month's core team meting:

We wonder if we should have more boring people in our project

and seeing everyone's very interesting ideas compared to just the "nix is fun :D functional programming is fun :D if only haskell $ operator tho :( and also not cursed :((" idea i have definitely makes me kinda resonate with that line (which, yeah i am objectively a pretty boring person, and i'm trying to believe that's okay) x)

00:20:16
@blokyk:matrix.orgzoë (she/her)alright i tried to sum it up based on what i understood, but i'm not very confident in that, don't hesitate to tell me if i misinterpreted/misunderstood/misframed something00:23:59
@blokyk:matrix.orgzoë (she/her) * alright i tried to sum it up based on what i understood, but i'm not very confident in that, don't hesitate to tell me if i misinterpreted/misunderstood/misframed something 00:34:19
@raitobezarius:matrix.orgraitobezariuslgtm05:35:46
@helle:tacobelllabs.nethelle (just a stray cat girl) The idea of technical debt collector comes to mind, anyway. 08:43:39
@delroth:delroth.netdelrothit's an stdlib problem more than a C++ problem, most large C++ codebases at the time were using a Result type in 2005, it's just that that knowledge wasn't widespread yet or too publicly available through libraries10:25:06
@piegames:flausch.socialpiegamesGranted, but still sum types in C++ are a lot less ergonomic than they could be10:26:04
@delroth:delroth.netdelrothyes, but you don't need full sum types capability for a Result type, you basically need the "?" operator10:26:56
@delroth:delroth.netdelroth* yes, but you don't need full sum types capability for a Result type, you basically need the "?" operator / syntax sugar10:27:22

Show newer messages


Back to Room ListRoom Version: 10