!lymvtcwDJ7ZA9Npq:lix.systems

Lix Development

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

You have reached the beginning of time (for this room).


SenderMessageTime
10 Dec 2025
@qyriad:katesiria.orgQyriad don't forget that every single Nixpkgs package loads hundreds if not thousands of other nix files 17:22:24
@piegames:flausch.socialpiegames yes, we're close enough to that atm, there still is one full AST walk for bindVars that's still costly (I tried to remove it with horrors but unexplicably did not make anything faster) and general AST allocation cost (more bump allocators would help a lot there probably) 17:22:40
@qyriad:katesiria.orgQyriad
In reply to @qyriad:katesiria.org
don't forget that every single Nixpkgs package loads hundreds if not thousands of other nix files
(and instantiates half a gazillion derivations…)
17:22:52
@piegames:flausch.socialpiegames we won't get much faster than that (though I expect that a parse that can directly emit Bytecode should be a little bit faster still because more compact representation), but the Rust rewrite still needs to be at least as fast as now and that's no small feat 17:23:20
@piegames:flausch.socialpiegames * we won't get much faster than that (though I expect that a parser that can directly emit Bytecode should be a little bit faster still because more compact representation), but the Rust rewrite still needs to be at least as fast as now and that's no small feat 17:23:45
@commentator2.0:elia.gardenRutile (rootile)
In reply to @piegames:flausch.social
we won't get much faster than that (though I expect that a parser that can directly emit Bytecode should be a little bit faster still because more compact representation), but the Rust rewrite still needs to be at least as fast as now and that's no small feat
Could the rust version be possibly be writtten with cache in mind from the beginning?
17:25:15
@piegames:flausch.socialpiegamesyes, but the issue is, what is your cache key?17:25:37
@piegames:flausch.socialpiegamesinode number and ctime might be our best bet17:28:31
@piegames:flausch.socialpiegamesbut in terms of cachable data structures, bytecode gives us that for free17:29:02
@piegames:flausch.socialpiegames* but in terms of cachable data structures, bytecode gives us that bit for free17:29:28
@charles:computer.surgeryCharles
In reply to @piegames:flausch.social
yes, but the issue is, what is your cache key?
What do other interpreters do?
17:31:54
@piegames:flausch.socialpiegamesI don't think any other interpreters have comparable performance requirements for parsing17:33:30
@piegames:flausch.socialpiegamesif there constraints weren't as tight we could just go content-addressed and use a hash17:33:43

Show newer messages


Back to Room ListRoom Version: 10