From mboxrd@z Thu Jan  1 00:00:00 1970
Path: news.gmane.org!.POSTED!not-for-mail
From: Helmut Eller <eller.helmut@gmail.com>
Newsgroups: gmane.emacs.devel
Subject: Re: RFC: String interpolation
Date: Sun, 11 Dec 2016 22:05:56 +0100
Message-ID: <m2k2b6rxaj.fsf@gmail.com>
References: <51825111-ace4-f750-4077-026a3b648d27@gmail.com>
	<8737hwnc52.fsf@lifelogs.com> <m34m2bj2m2.fsf@gnus.org>
	<8c117f5c-209a-97d8-79ce-a78f707f0545@gmail.com>
	<m3wpf7hjzf.fsf@gnus.org>
	<76c9c475-0180-aa49-3d4a-006d4e3f943c@gmail.com>
	<m3oa0ifgvd.fsf@gnus.org>
NNTP-Posting-Host: blaine.gmane.org
Mime-Version: 1.0
Content-Type: text/plain
X-Trace: blaine.gmane.org 1481490379 13624 195.159.176.226 (11 Dec 2016 21:06:19 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Sun, 11 Dec 2016 21:06:19 +0000 (UTC)
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux)
To: emacs-devel@gnu.org
Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Dec 11 22:06:14 2016
Return-path: <emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org>
Envelope-to: ged-emacs-devel@m.gmane.org
Original-Received: from lists.gnu.org ([208.118.235.17])
	by blaine.gmane.org with esmtp (Exim 4.84_2)
	(envelope-from <emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org>)
	id 1cGBK1-0002JZ-Jp
	for ged-emacs-devel@m.gmane.org; Sun, 11 Dec 2016 22:06:13 +0100
Original-Received: from localhost ([::1]:57126 helo=lists.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org>)
	id 1cGBK5-0004Js-Nh
	for ged-emacs-devel@m.gmane.org; Sun, 11 Dec 2016 16:06:17 -0500
Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:34970)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <ged-emacs-devel@m.gmane.org>) id 1cGBJx-0004Jn-FC
	for emacs-devel@gnu.org; Sun, 11 Dec 2016 16:06:10 -0500
Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <ged-emacs-devel@m.gmane.org>) id 1cGBJt-0004xF-32
	for emacs-devel@gnu.org; Sun, 11 Dec 2016 16:06:09 -0500
Original-Received: from [195.159.176.226] (port=34373 helo=blaine.gmane.org)
	by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16)
	(Exim 4.71) (envelope-from <ged-emacs-devel@m.gmane.org>)
	id 1cGBJs-0004wx-T9
	for emacs-devel@gnu.org; Sun, 11 Dec 2016 16:06:05 -0500
Original-Received: from list by blaine.gmane.org with local (Exim 4.84_2)
	(envelope-from <ged-emacs-devel@m.gmane.org>) id 1cGBJk-0008Nd-03
	for emacs-devel@gnu.org; Sun, 11 Dec 2016 22:05:56 +0100
X-Injected-Via-Gmane: http://gmane.org/
Original-Lines: 16
Original-X-Complaints-To: usenet@blaine.gmane.org
Cancel-Lock: sha1:JabV/z30kSKUPxByQ7kWujJHVEI=
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
	[fuzzy]
X-Received-From: 195.159.176.226
X-BeenThere: emacs-devel@gnu.org
X-Mailman-Version: 2.1.21
Precedence: list
List-Id: "Emacs development discussions." <emacs-devel.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/emacs-devel>,
	<mailto:emacs-devel-request@gnu.org?subject=unsubscribe>
List-Archive: <http://lists.gnu.org/archive/html/emacs-devel/>
List-Post: <mailto:emacs-devel@gnu.org>
List-Help: <mailto:emacs-devel-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/emacs-devel>,
	<mailto:emacs-devel-request@gnu.org?subject=subscribe>
Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org
Original-Sender: "Emacs-devel" <emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org>
Xref: news.gmane.org gmane.emacs.devel:210313
Archived-At: <http://permalink.gmane.org/gmane.emacs.devel/210313>

On Sun, Dec 11 2016, Lars Ingebrigtsen wrote:

> The other approach I mentioned is less explicit:
>
> (fmt "This is %{thing}.2f and %{zot}ss"
>      (thing (funcall '+ 3.42423 4)))
>
> If the named parameter mentioned isn't part of the value alist, then
> it's taken as a variable in its lexical/dynamic space, but if it does,
> then we use the value provided in the alist.

Keyword paramaters are also an option:

(fmt "This is %{thing}.2f and %{zot}ss" :thing (funcall '+ 3.42423 4))

Helmut