From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Tassilo Horn Newsgroups: gmane.emacs.devel Subject: Re: general lazy list facility for Emacs Lisp? Date: Wed, 23 Mar 2011 21:18:45 +0100 Message-ID: <87hbatfv4q.fsf@member.fsf.org> References: <87pqphswn3.fsf@lifelogs.com> <877hbpzsy8.fsf@member.fsf.org> <87oc51rcal.fsf@lifelogs.com> <87tyetfymt.fsf@member.fsf.org> <87pqphfyak.fsf@member.fsf.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1300911585 23058 80.91.229.12 (23 Mar 2011 20:19:45 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 23 Mar 2011 20:19:45 +0000 (UTC) Cc: Ted Zlatanov , emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Mar 23 21:19:41 2011 Return-path: Envelope-to: ged-emacs-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 1Q2UWj-0007MM-H3 for ged-emacs-devel@m.gmane.org; Wed, 23 Mar 2011 21:19:40 +0100 Original-Received: from localhost ([127.0.0.1]:36198 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q2UWX-0008Vo-JB for ged-emacs-devel@m.gmane.org; Wed, 23 Mar 2011 16:19:21 -0400 Original-Received: from [140.186.70.92] (port=44299 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q2UWI-0008Aa-IG for emacs-devel@gnu.org; Wed, 23 Mar 2011 16:19:16 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q2UW0-0006Ub-G2 for emacs-devel@gnu.org; Wed, 23 Mar 2011 16:18:49 -0400 Original-Received: from out3.smtp.messagingengine.com ([66.111.4.27]:54331) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q2UW0-0006UU-89 for emacs-devel@gnu.org; Wed, 23 Mar 2011 16:18:48 -0400 Original-Received: from compute3.internal (compute3.nyi.mail.srv.osa [10.202.2.43]) by gateway1.messagingengine.com (Postfix) with ESMTP id 5DB56207B1; Wed, 23 Mar 2011 16:18:47 -0400 (EDT) Original-Received: from frontend2.messagingengine.com ([10.202.2.161]) by compute3.internal (MEProxy); Wed, 23 Mar 2011 16:18:47 -0400 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=messagingengine.com; h=from:to:cc:subject:references:date:in-reply-to:message-id:mime-version:content-type; s=smtpout; bh=XXvubJpRzSyysv4Q2SDitf/sZtQ=; b=EdcUQuVvZAZzkjSZ5+HjKcM2fUTYuqT5CdLluY6JwdzQkR3/uYk7CQZyvv9NmgpXrj0zT3ZWal+E83w4N4P89n8QNqWSsn+vpVi/0xo6wat13Tl6PY+2RiCseA9cPbxHyAf7PFUm77WSh84C4rFwp9zK2VNeJ4Qe2mukpUTaHqo= X-Sasl-enc: Th0itCrFpxBdNihMLiiKb77l+FpeaPSpUsFmm/y0LxAt 1300911527 Original-Received: from thinkpad (88-134-173-46-dynip.superkabel.de [88.134.173.46]) by mail.messagingengine.com (Postfix) with ESMTPA id 531D244979F; Wed, 23 Mar 2011 16:18:46 -0400 (EDT) In-Reply-To: (Stefan Monnier's message of "Wed, 23 Mar 2011 16:03:45 -0400") User-Agent: Gnus/5.110016 (No Gnus v0.16) Emacs/24.0.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 66.111.4.27 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:137606 Archived-At: Stefan Monnier writes: Hi Stefan, > Emacs has had closures for "ever", tho it only closes over variables > that are bound by `lexical-let' (provided by CL). Emacs-24 will have > a more integrated and efficient support for closures, by setting the > `lexical-binding' variable which makes `let' bind lexically in the > same way as in Common-Lisp. You can try it out right now in the > `lexbind-new' branch which is pretty much ready for inclusion (mostly > lacks testing, and has currently 1 open bug apparently around eieio; > additional testers are welcome). I've started compiling and will report issues if I find one in my daily use. I guess, that there are many packages that won't work with lexical-binding set to t, right? I mean, at least I've seen code that uses let in order to save some parameters, like (let ((foo "bar")) (function-that-does-something-with-foo)) without defvar-ing foo. I might be wrong, but I think I remember org-mode did so in some places... Bye, Tassilo