unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Attila Lendvai <attila@lendvai.name>
To: Csepp <raingloom@riseup.net>
Cc: "Simon Tournier" <zimon.toutoune@gmail.com>,
	"Ludovic Courtès" <ludo@gnu.org>,
	"Andreas Enge" <andreas@enge.fr>,
	guix-devel@gnu.org
Subject: Re: Faster “guix search” (was Re: How many bytes do we add (closure of guix) when adding one new package?)
Date: Wed, 31 May 2023 11:55:55 +0000	[thread overview]
Message-ID: <NpKgW_AddhjDrHHsN9f8tdXODpHKpYENw2KnstTW91lDZC3gVPHG5ncXd6Zn-9mWchr06z5gEi_Zsh2RK8iOk4NGUcVNmLacd4SUMm3lsAI=@lendvai.name> (raw)
In-Reply-To: <87ttvska4n.fsf@riseup.net>

> 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



  reply	other threads:[~2023-05-31 11:57 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <ZEZWS/h9xa/ZX3/E@jurong>
     [not found] ` <875y9jzl9m.fsf@gnu.org>
     [not found]   ` <874jot19fd.fsf_-_@gnu.org>
     [not found]     ` <87fs7rvv5s.fsf_-_@gnu.org>
     [not found]       ` <ZGj3hGKGwu3mQklT@jurong>
     [not found]         ` <878rddooy4.fsf@gnu.org>
2023-05-25 18:24           ` How many bytes do we add (closure of guix) when adding one new package? Simon Tournier
2023-05-26 16:21             ` Ludovic Courtès
2023-05-30 12:10               ` Simon Tournier
2023-05-30 19:10                 ` Csepp
2023-05-31  8:05                   ` Faster “guix search” (was Re: How many bytes do we add (closure of guix) when adding one new package?) Simon Tournier
2023-05-31 11:10                     ` Csepp
2023-05-31 11:55                       ` Attila Lendvai [this message]
2023-05-30 20:55                 ` How many bytes do we add (closure of guix) when adding one new package? Jack Hill
2023-05-31  8:27                   ` Simon Tournier
2023-05-31 12:47                     ` Guillaume Le Vaillant

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='NpKgW_AddhjDrHHsN9f8tdXODpHKpYENw2KnstTW91lDZC3gVPHG5ncXd6Zn-9mWchr06z5gEi_Zsh2RK8iOk4NGUcVNmLacd4SUMm3lsAI=@lendvai.name' \
    --to=attila@lendvai.name \
    --cc=andreas@enge.fr \
    --cc=guix-devel@gnu.org \
    --cc=ludo@gnu.org \
    --cc=raingloom@riseup.net \
    --cc=zimon.toutoune@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).