From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Neil Jerram Newsgroups: gmane.emacs.devel Subject: Re: Emacs Lisp and Guile Date: 05 Nov 2002 23:28:19 +0000 Sender: emacs-devel-admin@gnu.org Message-ID: References: <200207200035.g6K0ZAb27891@aztec.santafe.edu> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1036544030 28014 80.91.224.249 (6 Nov 2002 00:53:50 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Wed, 6 Nov 2002 00:53:50 +0000 (UTC) Cc: rms@gnu.org, emacs-devel@gnu.org, mvo@zagadka.ping.de Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 189ES3-0007HV-00 for ; Wed, 06 Nov 2002 01:53:47 +0100 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 189EaJ-0002El-00 for ; Wed, 06 Nov 2002 02:02:19 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10) id 189E8Y-0005Be-00; Tue, 05 Nov 2002 19:33:38 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10) id 189DyQ-0001g6-00 for emacs-devel@gnu.org; Tue, 05 Nov 2002 19:23:10 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10) id 189DyN-0001fY-00 for emacs-devel@gnu.org; Tue, 05 Nov 2002 19:23:08 -0500 Original-Received: from mail.uklinux.net ([80.84.72.21] helo=s1.uklinux.net) by monty-python.gnu.org with esmtp (Exim 4.10) id 189DyK-0001ey-00; Tue, 05 Nov 2002 19:23:04 -0500 Original-Received: from laruns.ossau.uklinux.net (bts-0378.dialup.zetnet.co.uk [194.247.49.122]) by s1.uklinux.net (8.11.6/8.11.6) with ESMTP id gA60MrD24132; Wed, 6 Nov 2002 00:22:54 GMT Original-Received: from laruns.ossau.uklinux.net.ossau.uklinux.net (localhost [127.0.0.1]) by laruns.ossau.uklinux.net (Postfix on SuSE Linux 7.2 (i386)) with ESMTP id 639E6DC4D2; Tue, 5 Nov 2002 23:28:19 +0000 (GMT) Original-To: Ken Raeburn In-Reply-To: Original-Lines: 35 User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.11 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:9152 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:9152 Hello again - sorry for dropping this thread for so long. [CC'ers - please say if you prefer not to be copied further] >>>>> "Ken" == Ken Raeburn writes: Ken> So, why were @fop and @bind needed in libguile anyways? I was never Ken> clear on that. Is it for performance, or is Scheme not up to the Ken> task? Performance. @fop (scm_m_atfop in C) does some pretty odd stuff, but I think it could all be done in Scheme too. @bind (scm_m_atbind) has some special evaluator support, but again I think it could be done in Scheme with set! and dynamic-wind. Ken> I wonder if it's the best choice. I don't think encouraging people to Ken> support translation by starting with writing more C code for libguile Ken> is wise; we'll wind up with a libguile with random primitives for Ken> supporting translated elisp and perl and tcl and python Ken> and.... Personally, I'd rather see that support in Scheme modules. Me too, as far as possible. But I think it's acceptable to have a few new primitives for convenience/performance, preferably abstracted above the level of any single language (e.g. a general dynamic binding primitive). Ken> One of my concerns in that area is with mixing Lisp dynamic bindings Ken> and Guile thread support. If we want multi-threaded Lisp, do we pass Ken> around some sort of environment pointer, or call thread-aware routines Ken> to fetch current environment info? Neil, does your code try to Ken> support multi-threaded Lisp? No, it doesn't. Neil