From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Ted Zlatanov Newsgroups: gmane.emacs.devel Subject: Re: Threads in emacs implementation Date: Fri, 10 Jun 2005 15:09:43 -0400 Organization: =?utf-8?B?0KLQtdC+0LTQvtGAINCX0LvQsNGC0LDQvdC+0LI=?= @ Cienfuegos Message-ID: <4nd5quav0o.fsf@lifelogs.com> References: <6dbd4d0005060619227dd41364@mail.gmail.com> <87vf4oaft8.fsf@zemdatav.stor.no-ip.org> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1118430854 7313 80.91.229.2 (10 Jun 2005 19:14:14 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Fri, 10 Jun 2005 19:14:14 +0000 (UTC) Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jun 10 21:14:09 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1Dgowx-0006Lw-0d for ged-emacs-devel@m.gmane.org; Fri, 10 Jun 2005 21:13:51 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Dgp47-0002LM-Ig for ged-emacs-devel@m.gmane.org; Fri, 10 Jun 2005 15:21:15 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Dgp2V-0001xv-IP for emacs-devel@gnu.org; Fri, 10 Jun 2005 15:19:35 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Dgp2L-0001q3-NJ for emacs-devel@gnu.org; Fri, 10 Jun 2005 15:19:32 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Dgp2K-0001is-Lk for emacs-devel@gnu.org; Fri, 10 Jun 2005 15:19:24 -0400 Original-Received: from [80.91.229.2] (helo=ciao.gmane.org) by monty-python.gnu.org with esmtp (TLS-1.0:RSA_AES_128_CBC_SHA:16) (Exim 4.34) id 1DgouC-0000TT-LH for emacs-devel@gnu.org; Fri, 10 Jun 2005 15:11:00 -0400 Original-Received: from list by ciao.gmane.org with local (Exim 4.43) id 1DgopN-00056j-9g for emacs-devel@gnu.org; Fri, 10 Jun 2005 21:06:01 +0200 Original-Received: from asimov.bwh.harvard.edu ([134.174.8.118]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 10 Jun 2005 21:06:01 +0200 Original-Received: from tzz by asimov.bwh.harvard.edu with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 10 Jun 2005 21:06:01 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-To: emacs-devel@gnu.org Original-Lines: 16 Original-X-Complaints-To: usenet@sea.gmane.org X-Gmane-NNTP-Posting-Host: asimov.bwh.harvard.edu X-Face: bd.DQ~'29fIs`T_%O%C\g%6jW)yi[zuz6; d4V0`@y-~$#3P_Ng{@m+e4o<4P'#(_GJQ%TT= D}[Ep*b!\e,fBZ'j_+#"Ps?s2!4H2-Y"sx" User-Agent: Gnus/5.110004 (No Gnus v0.4) Emacs/21.3.50 (gnu/linux) Cancel-Lock: sha1:igC3WH6drqLdOHlUSR20dYk+mBA= X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:38530 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:38530 On Thu, 09 Jun 2005, rms@gnu.org wrote: > The greatest obstacle to this seems to be shallow binding - you'd have > to unwind one thread's stack and rewind another's when switching > threads. Maybe there's an easier way that I don't see... > > That is how the Lisp Machine worked. It is not an unreasonable idea. I think an alternate solution is to have no shared variables between threads once they are forked, and communicate through standard IPC (pipes, semaphores, etc.). This would preserve backwards compatibility and speed, while using more memory and making the programmers' job harder (but the lower number of bugs may be worth it). Ted