From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Constructed docstrings for closures Date: Fri, 16 Jan 2015 11:18:26 -0500 Message-ID: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1421425117 7088 80.91.229.3 (16 Jan 2015 16:18:37 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 16 Jan 2015 16:18:37 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jan 16 17:18:37 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 1YC9bZ-0004Yu-6C for ged-emacs-devel@m.gmane.org; Fri, 16 Jan 2015 17:18:37 +0100 Original-Received: from localhost ([::1]:56355 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YC9bY-0004h4-0f for ged-emacs-devel@m.gmane.org; Fri, 16 Jan 2015 11:18:36 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:57884) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YC9bT-0004fx-Tp for emacs-devel@gnu.org; Fri, 16 Jan 2015 11:18:32 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YC9bP-0005wS-RD for emacs-devel@gnu.org; Fri, 16 Jan 2015 11:18:31 -0500 Original-Received: from pruche.dit.umontreal.ca ([132.204.246.22]:56209) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YC9bP-0005wM-Mx for emacs-devel@gnu.org; Fri, 16 Jan 2015 11:18:27 -0500 Original-Received: from pastel.home (lechon.iro.umontreal.ca [132.204.27.242]) by pruche.dit.umontreal.ca (8.14.1/8.14.1) with ESMTP id t0GGIQQ8020555; Fri, 16 Jan 2015 11:18:26 -0500 Original-Received: by pastel.home (Postfix, from userid 20848) id 216CA25F2; Fri, 16 Jan 2015 11:18:26 -0500 (EST) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) X-NAI-Spam-Flag: NO X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0 X-NAI-Spam-Rules: 1 Rules triggered RV5188=0 X-NAI-Spam-Version: 2.3.0.9393 : core <5188> : inlines <1790> : streams <1374395> : uri <1842624> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 132.204.246.22 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:181332 Archived-At: When converting backquoted lambdas to closures, I've often bumped into the following problem: `(lambda (foo bar) ,(concat "Toto is very " blabla ".") (code using foo and bar (and ',blabla as well))) So code-wise, this can be replaced by a closure just fine, but doc-wise we don't have a way to construct a different docstring for every closure. I'd like to lift this restriction by offering a new feature that lets us do something like: (lambda (foo bar) (code using foo and bar (and blabla as well))) and get the closure we want with the docstring we want. Does anyone have an idea of what the could/should be? Stefan