From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Noah Lavine Newsgroups: gmane.emacs.devel Subject: Re: Requirements to merge "guilemacs" into trunk Date: Sun, 5 May 2013 19:10:35 -0400 Message-ID: References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=bcaec52bec2351079704dc00b2b8 X-Trace: ger.gmane.org 1367795465 27512 80.91.229.3 (5 May 2013 23:11:05 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 5 May 2013 23:11:05 +0000 (UTC) Cc: Josh Tilles , Emacs development discussions To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon May 06 01:11:04 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1UZ85A-0005n8-8U for ged-emacs-devel@m.gmane.org; Mon, 06 May 2013 01:11:04 +0200 Original-Received: from localhost ([::1]:55498 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UZ859-00044i-NH for ged-emacs-devel@m.gmane.org; Sun, 05 May 2013 19:11:03 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:55927) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UZ855-00044d-MM for emacs-devel@gnu.org; Sun, 05 May 2013 19:11:00 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UZ854-0002PE-9q for emacs-devel@gnu.org; Sun, 05 May 2013 19:10:59 -0400 Original-Received: from mail-pa0-f42.google.com ([209.85.220.42]:36109) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UZ853-0002P5-I5 for emacs-devel@gnu.org; Sun, 05 May 2013 19:10:57 -0400 Original-Received: by mail-pa0-f42.google.com with SMTP id bj3so1719107pad.29 for ; Sun, 05 May 2013 16:10:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type; bh=KgBNB195NDW3IQnKzG3xFGbPmyLo4N+t7W3YNxH4OYs=; b=BvGRi2ewRgjT6+ESe/L3EDLDcco9tlleOG4zGoNf6bKzOs7t/t4iuLG7ztQWelcOE9 bkpgTc+osutCwexdjcirMr5NS+vecftZv25w6LZtzUg2G7A3ODKXS4xC8surrY/b8KtL fL6sjciKfu5N48abVRbcpqRgYcHlAWngFLTh8q9++oKONoMdat0iK3aSceYuEfihKMmM BP7ebkra40vXT91pBPVKgTSic3T60VNGjPTKgXHyMkuMz752ul0AdpRTxgRQaiveoJB0 0uoqIFr3WVhPlihlIw/5jK1aA4QLBPVflVYJHStC9uan8CraltfkQYmdDwfV/sTVgr1L YNnw== X-Received: by 10.66.27.68 with SMTP id r4mr24635791pag.151.1367795456606; Sun, 05 May 2013 16:10:56 -0700 (PDT) Original-Received: by 10.68.43.202 with HTTP; Sun, 5 May 2013 16:10:35 -0700 (PDT) In-Reply-To: X-Google-Sender-Auth: CUZztaImWnXPYzl_eYTG9eSHzUg X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.85.220.42 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:159350 Archived-At: --bcaec52bec2351079704dc00b2b8 Content-Type: text/plain; charset=ISO-8859-1 Hello, I'm not the author of Guilemacs, but I do work on Guile, and I just took a look at the log of the Guilemacs repository ( http://git.hcoop.net/?p=bpt/emacs.git;a=log). As I'm sure you know, the goal is to use Guile as the ELisp interpreter (or really compiler) for Emacs. I will try to summarize how it works, although I hope bpt himself will email about it, since he wrote it. I think that the single biggest change is garbage collection. Guile uses bdw-gc, a library for conservative garbage collection. It looks like most of the changes are converting Emacs to use that. I see that bpt also disabled pure space, but I don't know if that's required by bdw-gc or just convenient when one is working on garbage collection. Similarly, he disabled asynchronous input, but I am quite sure Guile can do that, so I don't know why he turned it off. As for whether you could incorporate it without adopting it, I think the answer is yes. You could have a configure option that would control whether Emacs used its own ELisp interpreter or Guile's. This would touch a lot of the C code, because it would also affect the garbage collection and the object representation. But I don't see any reason it wouldn't work. Hope this helps, Noah Lavine On Sun, May 5, 2013 at 12:50 AM, Stefan Monnier wrote: > > What would you need to see in order to be convinced that "wip-guile" is > > mature enough to be incorporated into the trunk? Which concerns have yet > to > > be addressed? > > I don't know. Because I don't really know what is "guilemacs" and what > "incorporate it" means. I mean, I have some idea about what guilemacs > attempts to do, but for example I don't know to what extent we could > incorporate it without switching to it. > > > Stefan > > --bcaec52bec2351079704dc00b2b8 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
Hello,

I'm not the author of Guilem= acs, but I do work on Guile, and I just took a look at the log of the Guile= macs repository (http://git.hcoop.net/?p=3Dbpt/emacs.git;a=3Dlog). As I'm sure you= know, the goal is to use Guile as the ELisp interpreter (or really compile= r) for Emacs. I will try to summarize how it works, although I hope bpt him= self will email about it, since he wrote it.

I think that the single biggest change is garbage colle= ction. Guile uses bdw-gc, a library for conservative garbage collection. It= looks like most of the changes are converting Emacs to use that. I see tha= t bpt also disabled pure space, but I don't know if that's required= by bdw-gc or just convenient when one is working on garbage collection. Si= milarly, he disabled asynchronous input, but I am quite sure Guile can do t= hat, so I don't know why he turned it off.

As for whether you could incorporate it without adoptin= g it, I think the answer is yes. You could have a configure option that wou= ld control whether Emacs used its own ELisp interpreter or Guile's. Thi= s would touch a lot of the C code, because it would also affect the garbage= collection and the object representation. But I don't see any reason i= t wouldn't work.

Hope this helps,
Noah Lavine


On Sun, May 5, 201= 3 at 12:50 AM, Stefan Monnier <monnier@iro.umontreal.ca> wrote:
> What would you need t= o see in order to be convinced that "wip-guile" is
> mature enough to be incorporated into the trunk? Which concerns have y= et to
> be addressed?

I don't know. =A0Because I don't really know what is "gu= ilemacs" and what
"incorporate it" means. =A0I mean, I have some idea about what gu= ilemacs
attempts to do, but for example I don't know to what extent we could incorporate it without switching to it.


=A0 =A0 =A0 =A0 Stefan


--bcaec52bec2351079704dc00b2b8--