From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <guix-devel-bounces+larch=yhetil.org@gnu.org>
Received: from mp12.migadu.com ([2001:41d0:403:4789::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by ms9.migadu.com with LMTPS
	id kNSQGf3tAWV/EwEAauVa8A:P1
	(envelope-from <guix-devel-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Wed, 13 Sep 2023 19:14:37 +0200
Received: from aspmx1.migadu.com ([2001:41d0:403:4789::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by mp12.migadu.com with LMTPS
	id kNSQGf3tAWV/EwEAauVa8A
	(envelope-from <guix-devel-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Wed, 13 Sep 2023 19:14:37 +0200
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 2997258386
	for <larch@yhetil.org>; Wed, 13 Sep 2023 19:14:37 +0200 (CEST)
Authentication-Results: aspmx1.migadu.com;
	dkim=pass header.d=gmail.com header.s=20221208 header.b=XaDgRsCM;
	spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org";
	dmarc=pass (policy=none) header.from=gmail.com
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org;
	s=key1; t=1694625277;
	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:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references:list-id:list-help:
	 list-unsubscribe:list-subscribe:list-post:dkim-signature;
	bh=quvMt8CpzZlDHQQbkF22aiohNuEJTZqDafsLCrG23aM=;
	b=EM/j51n6KkdJ7+UdWwzgGM+1A+j8kJK7cZMVnMwMVBn6XfPS0JWDH7DY0zJjOhdN5j+UfD
	PlRrwf0EzTrwytAmdupYSrxfPQJ9f2GOsY2OSHJoYYWtwgbfzGfBUVx5tgavDMQb4mi48h
	0u4ADbFi7KZ3Qj2vqEBaPXdsIxzUZNp6nCxeLXRNCjCVdw2/8e7yJCwWXs+tW7HBC9g9ga
	7fyuUPKJhRLEHYe0s/DTbvYq17Q++0C2z6AzdU3BBfAebMeiBZAasAGRKW6624pTZ7kjM0
	XUH12sPH7QORCZR98NHLOucYEWTJlo9rOtpAyGx3PKOvr5IrQy+1PU8vAjFXug==
ARC-Authentication-Results: i=1;
	aspmx1.migadu.com;
	dkim=pass header.d=gmail.com header.s=20221208 header.b=XaDgRsCM;
	spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org";
	dmarc=pass (policy=none) header.from=gmail.com
ARC-Seal: i=1; s=key1; d=yhetil.org; t=1694625277; a=rsa-sha256; cv=none;
	b=M3+0VNo7WO9Xa3iUzAnD0Zadf8W0gQ2QAMs8ExnIDnDYyVIkjxqezRZFbmBj3Ao/xUr6vD
	QpQcfK8E6vaV1Ghw7IBxP6cGvrcYYBnTP4pLmvAK2jIKK+Xg/LAVGb4aHu/tnmlJ/+NVFL
	2CZ65D5x9XT5Z9Yd/4JGv6DnIkpHfOkAckJ+/EUsouBwobDcCf4UUNkVUP0MRCaOqfcTeY
	yVGT+lTbz9o4YiJ4hqZvhheTQ5zRpjtgwpX20/UCakyg7D7d2g0vnMuxdPZ/GPsshFACNF
	7Q32Kvgn1x+b8GCaa5t9dl8XmkqFjRDuJOj/6snRz2mLVpkMxOussCXeVjGw6A==
Received: from localhost ([::1] helo=lists1p.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.90_1)
	(envelope-from <guix-devel-bounces@gnu.org>)
	id 1qgTR4-0007fp-N2; Wed, 13 Sep 2023 13:13:54 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <maxim.cournoyer@gmail.com>)
 id 1qgTR3-0007fZ-CU
 for guix-devel@gnu.org; Wed, 13 Sep 2023 13:13:53 -0400
Received: from mail-qk1-x72e.google.com ([2607:f8b0:4864:20::72e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <maxim.cournoyer@gmail.com>)
 id 1qgTR1-0001l9-24
 for guix-devel@gnu.org; Wed, 13 Sep 2023 13:13:53 -0400
Received: by mail-qk1-x72e.google.com with SMTP id
 af79cd13be357-76e09202322so3829485a.3
 for <guix-devel@gnu.org>; Wed, 13 Sep 2023 10:13:50 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20221208; t=1694625230; x=1695230030; darn=gnu.org;
 h=content-transfer-encoding:mime-version:user-agent:message-id
 :in-reply-to:date:references:subject:cc:to:from:from:to:cc:subject
 :date:message-id:reply-to;
 bh=quvMt8CpzZlDHQQbkF22aiohNuEJTZqDafsLCrG23aM=;
 b=XaDgRsCMm1X73JN5Qae/mSkprT1B1ww5dTX8dP+ovpUsuo5o30jLTLLGDhXKmDjnqC
 8NkJgoddUE5wJzk9od4t9rB1MKYOxf/FNd75qlV9Z7PMtyjXzf1JCb+A0lLy5aK0yr4k
 vNGU0VHQb7d39GrS/PVwjrEce1GScWahSQJDX292ZyeAAM37tyz+6JAojQHFtUVQdKhX
 RLrPDSeOhlTt+X1GNor6grdXBJOaF0ymsJJB9u9NwcbjAvR9vKrDZNRrE4SapQxpdsqe
 +4ggiImSfIC62d/LalzBRCBPiYwspCx8sQsqFpVxoel69XcmvxrnoJTN0tOr9oj+2p1F
 ToEw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1694625230; x=1695230030;
 h=content-transfer-encoding:mime-version:user-agent:message-id
 :in-reply-to:date:references:subject:cc:to:from:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=quvMt8CpzZlDHQQbkF22aiohNuEJTZqDafsLCrG23aM=;
 b=dsrA3W0dEw1P0Cv3F8BOP9Xw6K+J5xSXX2CyKoLPT4mnoc/IgE5V14r4TCAFkAY+6z
 X6/HfwjziqGWyumdDQAJ9e96RD6G/sBT18//r4x6YNyYu67ummBfvQ7zTZMs3WlfkOoR
 DT7EPUYK5i+XNDm+QhLToQ+ZfbJXMjmDIz/Y3B7H2JtKcpkK7RPMPyfcA8WA+xyWXfLk
 ITFNoGH2tZI/fjdn3QFv1DNDgVNWHcM8shlSTyUTP7edh5bkBQWwDabq+4x0j1WbOQ7a
 teM4BDSj1A+W33SzRuo0q9cQX1RobMDbIFy+0MggTWWdIM2Ar2ku4Zf9yo66ZEgq0x1D
 SaFg==
X-Gm-Message-State: AOJu0Yx1GF/G158IXIA4Zblq2BgAi7g6OUUrrFxEwx/fIHdrIz3bxNG0
 +HJzGHODg7pHg58Y79lEeJq+MY+h0BE=
X-Google-Smtp-Source: AGHT+IE5g5RwTfU6IUjFButKVeVqxtvTehGfinD0C0ZYke6GsI0IqacfiQKzg9T360xPscgLENMUhg==
X-Received: by 2002:ac8:5753:0:b0:405:37fd:be80 with SMTP id
 19-20020ac85753000000b0040537fdbe80mr3658740qtx.28.1694625229963; 
 Wed, 13 Sep 2023 10:13:49 -0700 (PDT)
Received: from hurd (dsl-149-165.b2b2c.ca. [66.158.149.165])
 by smtp.gmail.com with ESMTPSA id
 d17-20020ac847d1000000b00401e04c66fesm4135073qtr.37.2023.09.13.10.13.49
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 13 Sep 2023 10:13:49 -0700 (PDT)
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
To: Felix Lechner via "Development of GNU Guix and the GNU System
 distribution." <guix-devel@gnu.org>
Cc: Christopher Baines <mail@cbaines.net>,  Felix Lechner
 <felix.lechner@lease-up.com>
Subject: Re: Implementing the guix-dameon in Guile
References: <875y4et4up.fsf@cbaines.net>
 <CAFHYt55WZ1NUGRniu_sXvBLqypQYPxLT0bSSV8AYJboE+XEj+A@mail.gmail.com>
Date: Wed, 13 Sep 2023 13:13:48 -0400
In-Reply-To: <CAFHYt55WZ1NUGRniu_sXvBLqypQYPxLT0bSSV8AYJboE+XEj+A@mail.gmail.com>
 (Felix Lechner via's message of "Wed, 13 Sep 2023 09:44:46 -0700")
Message-ID: <87zg1quhbn.fsf@gmail.com>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Received-SPF: pass client-ip=2607:f8b0:4864:20::72e;
 envelope-from=maxim.cournoyer@gmail.com; helo=mail-qk1-x72e.google.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-BeenThere: guix-devel@gnu.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Development of GNU Guix and the GNU System distribution."
 <guix-devel.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/guix-devel>,
 <mailto:guix-devel-request@gnu.org?subject=unsubscribe>
List-Archive: <https://lists.gnu.org/archive/html/guix-devel>
List-Post: <mailto:guix-devel@gnu.org>
List-Help: <mailto:guix-devel-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/guix-devel>,
 <mailto:guix-devel-request@gnu.org?subject=subscribe>
Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org
Sender: guix-devel-bounces+larch=yhetil.org@gnu.org
X-Migadu-Flow: FLOW_IN
X-Migadu-Country: US
X-Migadu-Scanner: mx1.migadu.com
X-Migadu-Spam-Score: -2.61
X-Spam-Score: -2.61
X-Migadu-Queue-Id: 2997258386
X-TUID: 1hGnpLUI5Sip

Hi!

Felix Lechner via "Development of GNU Guix and the GNU System
distribution." <guix-devel@gnu.org> writes:

> Hi Chris,
>
> On Wed, Sep 13, 2023 at 9:29=E2=80=AFAM Christopher Baines <mail@cbaines.=
net> wrote:
>>
>> Rewrites are risky because you only get the value right at the end,
>> therefore the priority is to get a minimal but viable implementation in
>> Guile that can be switched to
>
> Sounds exciting! I would like to help with testing.

Indeed, congrats for securing the NLnet founding (and thanks to them!).

> The transformation toward a Guile daemon is a point of consistency and
> pride for the project and therefore unlikely to be second-guessed or
> reverted. My recommendation is to replace the daemon gradually=E2=80=94wo=
rking
> from (apply system* (command-line) downward=E2=80=94and mainline your
> incremental changes as quickly as possible.

I had some musing about the daemon recently; I was thinking libguile
could be added to our old C++ daemon, which could then replace its
functions piece-wise with Scheme implemented ones?

At the end, we'd have almost everything in Scheme, at which point we
could rewrite the main loop to Scheme and say farewell to the old
daemon.

Would that approach makes any sense?  I know of at least one C++ project
integrating libguile, and that's the jami-daemon, so it could perhaps
provide some clues as to how to proceed to do so.

Thanks for the great initiative!

--=20
Thanks,
Maxim