From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Kelly Dean Newsgroups: gmane.emacs.devel Subject: Re: The purpose of makunbound Date: Thu, 19 Feb 2015 10:36:38 +0000 Message-ID: References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1424342309 23725 80.91.229.3 (19 Feb 2015 10:38:29 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 19 Feb 2015 10:38:29 +0000 (UTC) Cc: emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Feb 19 11:38:18 2015 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 1YOOUp-00038q-PD for ged-emacs-devel@m.gmane.org; Thu, 19 Feb 2015 11:38:15 +0100 Original-Received: from localhost ([::1]:55677 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YOOUk-0000G9-1F for ged-emacs-devel@m.gmane.org; Thu, 19 Feb 2015 05:38:10 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:40404) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YOOUd-0000FC-KQ for emacs-devel@gnu.org; Thu, 19 Feb 2015 05:38:07 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YOOUX-0004R5-2S for emacs-devel@gnu.org; Thu, 19 Feb 2015 05:38:03 -0500 Original-Received: from relay6-d.mail.gandi.net ([2001:4b98:c:538::198]:44443) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YOOUW-0004Qs-TM for emacs-devel@gnu.org; Thu, 19 Feb 2015 05:37:57 -0500 Original-Received: from mfilter11-d.gandi.net (mfilter11-d.gandi.net [217.70.178.131]) by relay6-d.mail.gandi.net (Postfix) with ESMTP id 75BB5FB8A0; Thu, 19 Feb 2015 11:37:56 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at mfilter11-d.gandi.net Original-Received: from relay6-d.mail.gandi.net ([217.70.183.198]) by mfilter11-d.gandi.net (mfilter11-d.gandi.net [10.0.15.180]) (amavisd-new, port 10024) with ESMTP id CuY5ZCRa9WAx; Thu, 19 Feb 2015 11:37:55 +0100 (CET) X-Originating-IP: 66.220.3.179 Original-Received: from localhost (gm179.geneticmail.com [66.220.3.179]) (Authenticated sender: kelly@prtime.org) by relay6-d.mail.gandi.net (Postfix) with ESMTPSA id C2B5BFB8A3; Thu, 19 Feb 2015 11:37:53 +0100 (CET) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4b98:c:538::198 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:183290 Archived-At: Stefan Monnier wrote: >>> Why would that be an error? >> Because of a classic mistake with dynamic binding: [snip] > This problematic situation is problematic regardless of the presence of > makunbound. True. I was just answering your question about why makunbound would be an= error. It's the same as why =C2=ABset=C2=BB would be an error. >> For single-threaded code, there's no difference, but for multi-threade= d, >> there is, which you already mentioned. Why have inconsistent interpret= ations >> for single vs. multi, when you can have a consistent one for both? > > Note that the current implementation technique for "bound/unbound" stil= l > works just fine with multithreading (the implementation of dynamically > scoped "let" is more problematic but it has no particular problematic > interaction with makunbound). > > So, adding multi-threading won't make much difference to this "problem"= . You said the difference between global and dynamic variables is just in m= y head because of the interpretation I chose. So my point was that my int= erpretation has the advantage of being applicable to both single-threadin= g and multi-threading. It's true that for single-threading, it's just phi= losophical.