> It makes zero sense to load full package definitions from disk for > most queries, such as guix search, with an SoA representation we > could load only the fields that we care about.
i'd like to quickly point out something while we are discussing this: when i came to guix it was rather confusing that there two namespaces through which one can get hold of a package object: 1) module-global variables in the scheme module system 2) a reified repository of packages (i.e. a scheme hash table, and some lookup functions). these two namespaces are quite indepenedent from each other, and there are no formal rules that govern the relationship between the two. there are scheme variable reference in some places, some others issue a call to SPECIFICATION->PACKAGE, manifests do that implicitly (?), etc. my gut feeling is that there is potential here for unification and simplification, without limiting composability. -- • attila lendvai • PGP: 963F 5D5F 45C7 DFCD 0A39 -- “The greatest gift you can give someone is your own personal development. I used to say, 'If you’ll take care of me, I’ll take care of you'. Now I say, 'I will take care of me for you, if you will take care of you for me'.” — Jim Rohn