From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Daniel Kraft Newsgroups: gmane.lisp.guile.devel Subject: Re: guile-emacs for gsoc Date: Wed, 07 Apr 2010 22:55:31 +0200 Message-ID: <4BBCF143.1030509@domob.eu> References: <874ojn9gg5.fsf@lupus.terpri.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1270673544 17902 80.91.229.12 (7 Apr 2010 20:52:24 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 7 Apr 2010 20:52:24 +0000 (UTC) To: guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Wed Apr 07 22:52:23 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 1NzcEY-0001wS-65 for guile-devel@m.gmane.org; Wed, 07 Apr 2010 22:52:22 +0200 Original-Received: from localhost ([127.0.0.1]:54677 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NzcEX-0008KA-3y for guile-devel@m.gmane.org; Wed, 07 Apr 2010 16:52:21 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NzcEP-0008JM-Sw for guile-devel@gnu.org; Wed, 07 Apr 2010 16:52:13 -0400 Original-Received: from [140.186.70.92] (port=55118 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NzcEO-0008J9-N4 for guile-devel@gnu.org; Wed, 07 Apr 2010 16:52:13 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NzcEN-00021D-0S for guile-devel@gnu.org; Wed, 07 Apr 2010 16:52:12 -0400 Original-Received: from lo.gmane.org ([80.91.229.12]:43910) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NzcEM-000216-Mu for guile-devel@gnu.org; Wed, 07 Apr 2010 16:52:10 -0400 Original-Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1NzcEJ-0001qO-PT for guile-devel@gnu.org; Wed, 07 Apr 2010 22:52:07 +0200 Original-Received: from d86-33-197-116.cust.tele2.at ([86.33.197.116]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 07 Apr 2010 22:52:07 +0200 Original-Received: from d by d86-33-197-116.cust.tele2.at with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 07 Apr 2010 22:52:07 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 51 Original-X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: d86-33-197-116.cust.tele2.at User-Agent: Thunderbird 2.0.0.0 (X11/20070425) In-Reply-To: <874ojn9gg5.fsf@lupus.terpri.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) 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:10155 Archived-At: Hi Brian, Brian Templeton wrote: > I'm preparing Summer of Code applications and am considering working on > Emacs-Guile integration. Here's my understanding of the current > situation, from skimming list archives, source code, etc.: this sounds great! I did the current elisp implementation in last year's GSoC, so I'd love to see this covered further! Unfortunatly I had nearly no time at all to work on this since last autumn because of my studies, even though I would have liked to. I do not really know about Ken's guile-emacs or emacs itself, but I hope I can give you some hints on the "pure" elisp implementation: First of all, see README in module/language/elisp. And of course, module/language/elisp itself, there's where (nearly) all of it is concentrated. One important open thing I'm aware is "proper" handling of Elisp's nil vs. Scheme's #f and '() -- this has been source of discussion for quite some while now, and you should find plenty of threads in the archives. And another thing is that Guile's "backend" got recently support for things like optional arguments, while last summer I implemented this in the elisp "front end"; so maybe a good first start (I don't know if an easy start, though) could be to switch elisp's implementation to the available Guile infrastructure instead. Of the missing elisp bits, some are mentioned in the README file. Other things, especially what I had in mind as doing "next", would be for instance buffer- and frame-local bindings. I think there may even be some threads in the mailing list archives where I wrote some ideas about that; I'm not sure, though. I think my idea was to mark the bindings in a special way (similarly to what is currently done for void values) and back them by some kind of hash-table that is indexed with the current buffer/frame/whatever on retrieval. But if you want to work on that, you will no doubt find a good way to do so :) If you want to work (also) on the real emacs integration, I can not tell you anything about that. But if that's your main focus of interest, maybe I can even find some time again during the summer to work on the elisp bits and help you that way -- I guess that the emacs work may be far more than a single GSoC project... (I will not apply for Guile as GSoC project though, this would be just "for fun" -- more so than GSoC already is.) Happy hacking! Daniel