From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id wFhVLSL3gWPhYAEAbAwnHQ (envelope-from ) for ; Sat, 26 Nov 2022 12:23:14 +0100 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id UMcVLSL3gWNpxwAAauVa8A (envelope-from ) for ; Sat, 26 Nov 2022 12:23:14 +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 69F9924F10 for ; Sat, 26 Nov 2022 12:23:14 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oytGY-0003Jm-Bc; Sat, 26 Nov 2022 06:22:38 -0500 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 ) id 1oytGW-0003JO-E9 for guix-devel@gnu.org; Sat, 26 Nov 2022 06:22:36 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oytGW-0002QD-53; Sat, 26 Nov 2022 06:22:36 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=71KoEfspORPPaaGrQCYyTwJjtXMmd8vvOocjTVU5PlY=; b=AfSV6wdwD7lMsnPNO8j1 NUgpL2SQCuJY1+fxkJBhAe3FjZ2dKOukjHHMND6OxugNZ7eThds51uEHocoFnCsV/9WT5umXnD3I0 0UTULdRkMUnzKoeCziNcc6itF7l1QRIBztTClTaZ+6iCkmo9Ktiy8JgrMX2Xq53sm/KJaeICkD6pW N3XusNO0qXLnnvCtKTBwCLVBnjkHab34f391uefeJX34OGTcM0eubhmTKJ4wHtW+CAJi8G9s+CEyT hXBvgDgIXSpk0uivbAs+0ux3vhdYTx12XWhGQbs28KYfpt5Yyt4NBUp0YN92C2V4HUIR5UH54rBvf zgBqrLL4NMezZQ==; Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201] helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oytGV-0004gk-Lj; Sat, 26 Nov 2022 06:22:35 -0500 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Maxim Cournoyer Cc: zimoun , guix-devel Subject: Re: Guile debugger workgroup? References: <20221027035100.28852-1-maxim.cournoyer@gmail.com> <20221027035100.28852-3-maxim.cournoyer@gmail.com> <87leojon1z.fsf_-_@gnu.org> <877d03xywl.fsf@gmail.com> <87sfihfpng.fsf_-_@gnu.org> <86zgcpju9p.fsf@gmail.com> <87y1s82o23.fsf@gmail.com> <87zgckwdtw.fsf@gmail.com> <87sficqb71.fsf@gmail.com> <86fsebdpl9.fsf@gmail.com> <87r0xrjbx1.fsf_-_@gmail.com> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: Sextidi 6 Frimaire an 231 de la =?utf-8?Q?R=C3=A9vol?= =?utf-8?Q?ution=2C?= jour de la =?utf-8?Q?M=C3=A2che?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Sat, 26 Nov 2022 12:22:32 +0100 In-Reply-To: <87r0xrjbx1.fsf_-_@gmail.com> (Maxim Cournoyer's message of "Fri, 25 Nov 2022 10:23:22 -0500") Message-ID: <87fse69czr.fsf@gnu.org> 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 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." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-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 ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1669461794; 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=71KoEfspORPPaaGrQCYyTwJjtXMmd8vvOocjTVU5PlY=; b=OjjSZLCT9QYkqmx1Y86hDZAkmyvB7drtK2nISH23uKxrWesH/PFP4WwEaGmDsebYNNlCHV 8gDFihXp0MXO/BWSwJaP5bUbtf6QoXbziou0QiDGMWo0/skukepElSjTNvqpLJYy43ZMxG KDu/DYP4pEtc1e9F+IWtCm//M3coNi9Xbzn2o8XYfOX4+6sCn5epk2cZnGeHJGlWsIwMq2 pXvPHnoSU/0TjQnts+49AEwNRB36bNDXxgjAdaWoQvjL8M6wWu2jdjPhCf0AwifUnDD1C2 ROs29lfSvIimkADMnG4iZph9AmAkMRrKHPGwH+1nfBHjo95PJ04ctgmQIPE/Mg== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1669461794; a=rsa-sha256; cv=none; b=tBguaFSkBzpqDE7SO85pI8Voao1upYfiUC9XUaDLzmjUT6XDshqsUd82fxVqOJuNettnQv HdrV+gSGkY3yjIc1kbjV9g/GORZny4zY3vBGU0S8abHW2eayfspkbUh8c3pB0iaDMzf8qe w8raGcpeXH4qeTw0SCV94arCDVKXgRCy6d0+OiEV/hgM0SVOUmXqG4hRn8sX2OVbv86VGH uI2KDo5YuS3MeDmZxrsYDiSixHtmBTVFKItQPmwpB+ad7nfm15n31uUPf9mUq2XAkJPSo5 JNQ/MgJ0Fkui+mFJaMGCAA+aDdtoakyk4HRrhFxo/qIxpTlZbkEY9iQM0mfwxw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=gnu.org header.s=fencepost-gnu-org header.b=AfSV6wdw; dmarc=pass (policy=none) header.from=gnu.org; 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" X-Migadu-Spam-Score: -4.17 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gnu.org header.s=fencepost-gnu-org header.b=AfSV6wdw; dmarc=pass (policy=none) header.from=gnu.org; 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" X-Migadu-Queue-Id: 69F9924F10 X-Spam-Score: -4.17 X-Migadu-Scanner: scn1.migadu.com X-TUID: /f2DPRZknNNT Hi, Maxim Cournoyer skribis: > I also agree! It's hard to convince people to pick Guile for their > project when there is: > > 1. Lack of a debugger that can break and step anywhere in your source > code > 2. Lack of debugger integration to an IDE (it's not even integrated into > Emacs) Well, Guile has a debugger that lets you do that (modulo inlining etc., as with any other compiler), and Geiser is not Visual Studio=E2=84=A2 but it does a good job. Also, I think I mentioned before that I almost never use breakpoints on Guile code=E2=80=94not because of some deficiency of the debugger, not (jus= t) because I=E2=80=99m silly or inexperienced, but because it=E2=80=99s rarely= the right tool for the job. I believe this is largely due to (1) writing functional code, and (2) doing live programming at the REPL. Why would you use breakpoints when you can just call the relevant procedures on some input to see how they behave? So I think you won=E2=80=99t convince people to pick Guile for their projec= t by selling it as a C/C++/Python drop-in replacement. Guile is about functional programming and live coding so the set of tools differs. > Perhaps we should assemble a Guile debugger workgroup that'd review > what's broken, what's missing, what can be borrowed from other Scheme or > languages for inspiration, and hopefully improve the Guile debugging > experience? :-) Despite what I wrote, I think it=E2=80=99s a good idea. I suppose inspirat= ion would come from other Schemes, in particular Racket, and perhaps from other live-coding systems (Common Lisp, Smalltalk, etc.), rather than from Python or C. Ludo=E2=80=99.