From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Jose A. Ortega Ruiz" Newsgroups: gmane.lisp.guile.devel Subject: Re: emacs, guile, and the manual Date: Wed, 28 Jul 2010 22:14:15 +0200 Message-ID: <87mxtbqs88.fsf@newton.homeunix.net> References: <8739v3ed1q.fsf@ossau.uklinux.net> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1280424200 19731 80.91.229.12 (29 Jul 2010 17:23:20 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 29 Jul 2010 17:23:20 +0000 (UTC) Cc: Andy Wingo , guile-devel To: Neil Jerram Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Thu Jul 29 19:23:17 2010 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OeWox-0003vo-FN for guile-devel@m.gmane.org; Thu, 29 Jul 2010 19:23:07 +0200 Original-Received: from localhost ([127.0.0.1]:50920 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OeWoc-0003gt-UR for guile-devel@m.gmane.org; Thu, 29 Jul 2010 13:22:43 -0400 Original-Received: from [140.186.70.92] (port=44160 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OeD3X-0007qw-Ea for guile-devel@gnu.org; Wed, 28 Jul 2010 16:16:56 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OeD1B-0002Fl-DX for guile-devel@gnu.org; Wed, 28 Jul 2010 16:14:22 -0400 Original-Received: from mail-wy0-f169.google.com ([74.125.82.169]:42077) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OeD1B-0002Fc-2n for guile-devel@gnu.org; Wed, 28 Jul 2010 16:14:21 -0400 Original-Received: by wyg36 with SMTP id 36so5173308wyg.0 for ; Wed, 28 Jul 2010 13:14:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:received:from:to:cc :subject:in-reply-to:references:user-agent:x-attribution:x-url:date :message-id:mime-version:content-type; bh=E0sQfxgKvm7ZgS1eKFn+JLmWvDuKesgFBfdZHdew7Jc=; b=mJNaawsShLm269PE+0GwZy83PDcjnUPeIm7JWlIpd8I1nilGdQyZBeFGKO4vPmGMPL 6Ic5ELfhLOxgXuysgQPo9CTq7eVoCkqgQTfaVVzBG0hTiPhjmjq9wDhLpFCy0D4wp8Hk W+6+to1GIB+FMjy5YP/SK9AQNgtcxdFCJOZPE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:from:to:cc:subject:in-reply-to:references:user-agent :x-attribution:x-url:date:message-id:mime-version:content-type; b=IaU9fkCuH6XfjVdxtC6EixJ6UUbP1VHVoNDcdghSiBC+bWBycT82CGRwkN/+w47COU YN1DDUWTYqQgZRI5g8NrX6pqJgp2vTVWt6NBaUpKTQlBXE4B+5xdKBev2CnA6B5k802n pm/PIsgSZ8fAfaJbC4i+Z3agsTt1dg3yKvJ7E= Original-Received: by 10.227.156.143 with SMTP id x15mr10864283wbw.147.1280348059765; Wed, 28 Jul 2010 13:14:19 -0700 (PDT) Original-Received: from newton.homeunix.net (14.Red-88-6-167.staticIP.rima-tde.net [88.6.167.14]) by mx.google.com with ESMTPS id f30sm68777wbe.0.2010.07.28.13.14.17 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 28 Jul 2010 13:14:18 -0700 (PDT) Original-Received: from localhost ([127.0.0.1] helo=newton.homeunix.net ident=jao) by newton.homeunix.net with esmtp (Exim 4.72) (envelope-from ) id 1OeD16-0000F4-1k; Wed, 28 Jul 2010 22:14:16 +0200 In-Reply-To: <8739v3ed1q.fsf@ossau.uklinux.net> (Neil Jerram's message of "Wed, 28 Jul 2010 18:22:57 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) X-Attribution: jao X-URL: X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Mailman-Approved-At: Thu, 29 Jul 2010 13:21:51 -0400 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:10746 Archived-At: On Wed, Jul 28 2010, Neil Jerram wrote: [...] > Jao said he wanted to work on some manual doc for Geiser - I wonder how > that is going? It's still work in progress. Most of what i have so far (a bit more than half the tutorial) is online at . > >> I would be OK with excising GDS and its docs, and having the manual >> endorse Geiser, *IF* someone (Jao?) takes a close look at GDS docs and >> code, takes notes on what's useful, and replicates those bits of >> functionality in Geiser. > > Agreed, and I imagine that's not too far in practice from what Jao was > already planning. > >> In particular I would be happy if I could connect to a TCP port running >> on an application from Emacs (not requiring stdin to be the repl). I >> suppose that port could just be running a new REPL on a telnet, which >> does have the advantage that you can connect to it with plain comint. That's actually my plan. All that's needed is a Guile module that spawns a thread serving a REPL over a socket and writing an elisp function, and everything that works today for a locally run REPL will work for a remote connection (modulo firewalls and such). The only reason i haven't written that yet is that i don't need it :) >> The debugging integration could probably wait, as debugging VM programs >> is still in flux, I think. > > When debugging integration is (at some future time) included, I think > the application<->debugger channel will need to be more complex than a > normal REPL - for example, so that there is a way for the application to > tell the debugger when a breakpoint has been hit (on some thread other > than the TCP port thread). Therefore it may not be wise to begin with a > REPL implementation now. So far, the Guile 2.0 debugger is based on a REPL, and Geiser copes well with it, although we need some polish, possibly defining some Emacs commands that send the appropriate comma-commands to Guile's REPL. If it were up to me, i would implement breakpoints and stepping also via the debugging REPL; but this preference is, i am sure, highly influenced by the fact that that be very easy to support in Geiser. > On the other hand, a REPL is fine for things like help, introspection > and evaluation (and tracing, if asynchronous trace output doesn't get > mixed up with other REPL output), so if it's really easy to implement a > REPL-based channel, probably that is worth doing in the interim after > all (until VM debugging crystallises). Agreed. Using a debugger model a la GDS in Geiser would require considerable tweaking of the latter's internals, given its current REPL bias. If it finally comes out that GDS's is the right debugging story for Guile 2.x, that'll be the time to start the effort of redesigning Geiser. Cheers, jao -- Not far from the invention of fire must rank the invention of doubt. -Thomas Henry Huxley, biologist (1825-1895)