From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id AKwBAn6jPGIZegEAgWs5BA (envelope-from ) for ; Thu, 24 Mar 2022 17:59:42 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id oGkGO32jPGLFcgEA9RJhRA (envelope-from ) for ; Thu, 24 Mar 2022 17:59:41 +0100 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id A4AAD38CE1 for ; Thu, 24 Mar 2022 17:59:41 +0100 (CET) Received: from localhost ([::1]:57262 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nXQoG-0005WB-RE for larch@yhetil.org; Thu, 24 Mar 2022 12:59:40 -0400 Received: from eggs.gnu.org ([209.51.188.92]:40226) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nXQnh-0005UY-JN for guix-patches@gnu.org; Thu, 24 Mar 2022 12:59:05 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:55396) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nXQne-0004DF-FZ for guix-patches@gnu.org; Thu, 24 Mar 2022 12:59:05 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nXQne-0001DO-6L for guix-patches@gnu.org; Thu, 24 Mar 2022 12:59:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#54539] [PATCH 0/6] Start breaking up import cycles Resent-From: zimoun Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 24 Mar 2022 16:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 54539 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Liliana Marie Prikler Cc: 54539@debbugs.gnu.org, Maxime Devos Received: via spool by 54539-submit@debbugs.gnu.org id=B54539.16481411404663 (code B ref 54539); Thu, 24 Mar 2022 16:59:02 +0000 Received: (at 54539) by debbugs.gnu.org; 24 Mar 2022 16:59:00 +0000 Received: from localhost ([127.0.0.1]:49293 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nXQnc-0001D9-IZ for submit@debbugs.gnu.org; Thu, 24 Mar 2022 12:59:00 -0400 Received: from mail-io1-f49.google.com ([209.85.166.49]:35701) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nXQna-0001Cu-N0 for 54539@debbugs.gnu.org; Thu, 24 Mar 2022 12:58:59 -0400 Received: by mail-io1-f49.google.com with SMTP id p22so6099947iod.2 for <54539@debbugs.gnu.org>; Thu, 24 Mar 2022 09:58:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=T3j8FkYCJNvTKFdkCkWEU8UlHXK4Az7gIfYOJGoBOjM=; b=HX76Ad2XLN4iQyiVxjoECMLDj4N2/bGsKpl1CZtqu6IAO7BI9XgyukYyrgtkjJCzCZ gIn0d63HqufT+g6+TBVIo8nqH3vOUVmnhwL9Z6ZM+Sa1VvbCtmYmXfU7WU/3DFkBps17 gmiXoxjIZCRF2lg0Cq1nSbFt13L5FdpAKkWN2+n0RBP22ogUhc0KW43QNJq1OtMkL9Z5 0jjRKgI509E8kkAzUDV9CQ2zIyBAGVKUNiTwX/VCBmU4fFYREk/wRFb/4oaFcCNmkZ1v ZrbQkSNH5RLN9VUJ2kgUUbJ8Tnoi6HXfuhw8hFANCDZBKOQtPxcsT+1hrnNpeCf4USn9 hpoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=T3j8FkYCJNvTKFdkCkWEU8UlHXK4Az7gIfYOJGoBOjM=; b=aPUVPdi7iMOrp2CCHNBLh/Hhq8v4G6Fm2+axZDs7hbH4LfyEXdZZgb3zS0Davck89R VvYZMkQiLMRfBdDXYoLvMelRVYgF+v41/j+R7cmSso2Hj/37fCvle02okEexUavN52DT XnpapJAG69WdTAgnxnXUhxz9PKQlBL7lNf46gRq0lk/mf8SjR7Mj5A5CfjbaPEepBd5r bpkX224fKK+mg1qV0wbSkLpUWPbtxSMHcBKVtTfHKLJgojm8g2k19/7C8TUeSSM/0bvv Bvl4iGwbwdnw23Rgx7XNOwvYfBqbrTMez5ca3nrIEh+Xj4u/GsaTdsgXgqaEmNTIsl3w KHBg== X-Gm-Message-State: AOAM531xlmHmJlXSEu7Q3LAay6f9jCMm1k1IkH/MpBQavm4c5x1BRaIh SE2WY0Jt1SNquqOQebE/gQsng52OfHxZiQQMuFE= X-Google-Smtp-Source: ABdhPJywukpT8W2BiHKXFqc6522UDvsuuFlixEueJdaeAJnXrg2lJ+l6Dl+h9qQwe21vPfvgd14HUCvpa9TnLlM4ojs= X-Received: by 2002:a5e:dc05:0:b0:645:d2cc:3e92 with SMTP id b5-20020a5edc05000000b00645d2cc3e92mr3439166iok.72.1648141132625; Thu, 24 Mar 2022 09:58:52 -0700 (PDT) MIME-Version: 1.0 References: <5a87d6f772ff7424cb6fccea7c45276bef7797aa.camel@telenet.be> <5ab234b577c15dd50c36aaf427cce593404b52dc.camel@ist.tugraz.at> In-Reply-To: <5ab234b577c15dd50c36aaf427cce593404b52dc.camel@ist.tugraz.at> From: zimoun Date: Thu, 24 Mar 2022 17:58:41 +0100 Message-ID: Content-Type: text/plain; charset="UTF-8" X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1648141181; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:in-reply-to:in-reply-to:references:references: list-id:list-help:list-unsubscribe:list-subscribe:list-post: dkim-signature; bh=T3j8FkYCJNvTKFdkCkWEU8UlHXK4Az7gIfYOJGoBOjM=; b=rCDU3vF1a0XC3wauOwhP195pAzTvWma4RFO8v6gOX15FHuW+oAWTRXm6oX1LWt9KJ9a0jB 6Yt/AOjnRRikFOpgja16yFtnndrDfNaN3IgH/zwymQu/+zvYjl2IDAFRWc4vBzaa+5DNzI HVVO8cn6vx9Pk7hi/hvEAuUrS9J1vbAIj5R2VxbCtlVjGmhzAc26020TezXs2Lj+xuZeE/ MpVByw+V2aiWa6xFvlxlF1arwPjbThyeanYL1+9XEy/aDWEtInuNmK4IWjEA2ihavLja/s w2s/zj7o5f1YNMCLHx7WrKt77ikQhhjgrwYO58MqjlMBOSNyAQArnbVPBv0LDg== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1648141181; a=rsa-sha256; cv=none; b=ST0xkO+KAi+wke5UllLgfD+pIIuj8wdQ8Fd8+DW6XqZOLksvm9LEdPWlFkozN9zgUqMpzF aoiIXtA1Us9OWqWPKGZESHnIOM9XfJ8X63j49Wa0AvqH8DcPQbaQXqbnusEhL4dAtVPAYu Bo5EsFEN/mAcELsaOw1IH7a1wA3Pu+gQfDi58wV9tOliGRUQLY7XFO8cUhPPnoCRuzO1Il SSrZbSGM4jZFXfqFjhNU+vOiIiEkrlI7qqNEbliF7UonibjiZY0m24yuu76JQbLkCPjDcO i1RwRE3TaVH6KW3i/jNmPypDE454F+F8cWoNA7ZtoQRpVtxDjYS5bSFOIPHvvQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=HX76Ad2X; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: 5.91 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=HX76Ad2X; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: A4AAD38CE1 X-Spam-Score: 5.91 X-Migadu-Scanner: scn0.migadu.com X-TUID: QlFqPOEeBz1g Hi, On Thu, 24 Mar 2022 at 08:23, Liliana Marie Prikler wrote: > I agree that breaking up cycles is a good thing, but I disagree with > some of the decisions you've made here. For instance, I oppose the use > of single-package modules, because those more often than not simply > clutter the file system. Well, instead of opinions in the vacuum of matter, we need to profile and decide on performance report. The number of files and the number of package per file should consider the performance of: - compilation by developer - guix pull - guix search (or any other) - guix search --load-path - etc. > In either case, declaring all these lazy dependencies near the module > definition would have the added benefit, that people could see them > being lazily imported and thus no longer need the #:use-modules > comment. I agree that lazyness is a good thing and a good direction. However, let be pragmatic with what we have now. :-) What are the performance comparison between breaking many cycles as Maxime is proposing vs using many 'module-ref' + 'resolve-interface' instead of break? Cheers, simon