220 26924 <e00db911-40f5-4c11-a4b8-32bba77aa0a5@isocpp.org> article
Path: news.gmane.org!not-for-mail
From: Carl Cook <carl.cook@gmail.com>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Proposal - non allocating std::function
Date: Wed, 13 Jul 2016 15:47:44 -0700 (PDT)
Lines: 81
Approved: news@gmane.org
Message-ID: <e00db911-40f5-4c11-a4b8-32bba77aa0a5@isocpp.org>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: plane.gmane.org
Mime-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_2360_1450864764.1468450064533"
X-Trace: ger.gmane.org 1468450084 2207 80.91.229.3 (13 Jul 2016 22:48:04 GMT)
X-Complaints-To: usenet@ger.gmane.org
NNTP-Posting-Date: Wed, 13 Jul 2016 22:48:04 +0000 (UTC)
To: ISO C++ Standard - Future Proposals <std-proposals@isocpp.org>
Original-X-From: std-proposals+bncBD27VEPGSEGBBEMKTO6AKGQEMHLFRVY@isocpp.org Thu Jul 14 00:47:49 2016
Return-path: <std-proposals+bncBD27VEPGSEGBBEMKTO6AKGQEMHLFRVY@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-pa0-f70.google.com ([209.85.220.70])
	by plane.gmane.org with esmtp (Exim 4.69)
	(envelope-from <std-proposals+bncBD27VEPGSEGBBEMKTO6AKGQEMHLFRVY@isocpp.org>)
	id 1bNSwW-0007pG-4V
	for gclcip-std-proposals@m.gmane.org; Thu, 14 Jul 2016 00:47:48 +0200
Original-Received: by mail-pa0-f70.google.com with SMTP id ez1sf9224187pab.0
        for <gclcip-std-proposals@m.gmane.org>; Wed, 13 Jul 2016 15:47:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=date:from:to:message-id:subject:mime-version:x-original-sender
         :reply-to:precedence:mailing-list:list-id:x-spam-checked-in-group
         :list-post:list-help:list-archive:list-subscribe:list-unsubscribe;
        bh=6RAI+Q8SINKfh7V56zgxwYIWOLLy6QhxO+UHmoI+h0Q=;
        b=MwRiDCrlrC0Df+dpvXdadGqcY6hpDtKf6yfqfLoH8vg7mpfokERpVNPSjEHtnRltq1
         4JkHT7BT0Kl1QpygqE8y/o/7BYxA5Gsf7FRxljJQ7OjQTcOpBXTWXtYqvFWLl/AEBbru
         4xCSGVXTIEL7u4L25lJiDlZAg9zc4zoOlzEkYR1qeSdYzxtYlv3Rmzmc8n2zfov419jG
         2XmSw3fI52pvqC22HPvghBsn4+oe4p+xB94y6pZvWgPPItUcENqWJBKXqQh7FbFTGIRl
         rBFAQHnTbYZxhHVz8gLmJozdl/xVisFEDiuRsLP9t/taMCqFoUVwgB+3X+D/RylilcaR
         1rAQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20120113;
        h=date:from:to:message-id:subject:mime-version:x-original-sender
         :reply-to:precedence:mailing-list:list-id:x-spam-checked-in-group
         :list-post:list-help:list-archive:list-subscribe:list-unsubscribe;
        bh=6RAI+Q8SINKfh7V56zgxwYIWOLLy6QhxO+UHmoI+h0Q=;
        b=kFi4nehDYH7pth51nmilqgCRXGTE1JOihmP7W0fSLf+rS7pwwTODgkMzdoHGqh/Kun
         jSn8XMboMvHQ7nhROXNe4F4NhyUuDoVVhws4sKVinhiKB4Zyv8XMVSwX8Ib1yFmelC0f
         jnci6Vxc3t2xiXh84JLoKxsKHPsAk6qa+x9B8bYgr5YL1aYQE/Z9G8MzFJvf7iWP4/6q
         hoMMbqC2pfNGjGdXGj0bCjatgOZ+A4wDbO3Xrof1+PqFmCm0bVIvdB7azBrSYclqFm9P
         8K+nInXVbUN5puASW//S94zlTg9glzolgEwHhDv/13pFSpySbInsdaRhyX7icivwwqI+
         7LBQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20130820;
        h=x-gm-message-state:date:from:to:message-id:subject:mime-version
         :x-original-sender:reply-to:precedence:mailing-list:list-id
         :x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=6RAI+Q8SINKfh7V56zgxwYIWOLLy6QhxO+UHmoI+h0Q=;
        b=EYSnWfuj9WEeEPluUtLIF3BzvglI6M/5FUAhODeZwZqIz0Y2V7bZTV36e9pd1lNGIi
         126Fm/MuFu7w4AKZrtwXd5Jk1dywHyzVFHVHbfPah6Lki7z6n7jIxkwF19MDmAUth6q9
         y/P2RD2ZzhOwTNFFHUtbaGT+hneYrIw5EJoltuV/UN1UUuUz5itJX2JpYINnAm7Qe1Zc
         mLPj9BG7QVCk0IZ4z2BSOZKfS1d5ZdF1CoXwF2O8Tid1DTz0LA4ugIgcFHrQwWCq0AQO
         nFrqTRUYLLqbgavltSLJw53S2rNJI9qnHQH8J72kaFem97rzDn2bpWNWJh5dBxMd8fff
         axuA==
X-Gm-Message-State: ALyK8tKQvVLpmptVyw9GWh2+kid8+49eeOjsGG5fnFvByzhSlAAIbfMnseR27A3vS2psRw==
X-Received: by 10.66.124.193 with SMTP id mk1mr8481713pab.21.1468450066875;
        Wed, 13 Jul 2016 15:47:46 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.107.15.25 with SMTP id x25ls114700ioi.5.gmail; Wed, 13 Jul
 2016 15:47:45 -0700 (PDT)
X-Received: by 10.36.210.213 with SMTP id z204mr813654itf.0.1468450065431;
        Wed, 13 Jul 2016 15:47:45 -0700 (PDT)
X-Original-Sender: carl.cook@gmail.com
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Spam-Checked-In-Group: std-proposals@isocpp.org
X-Google-Group-Id: 399137483710
List-Post: <https://groups.google.com/a/isocpp.org/group/std-proposals/post>, <mailto:std-proposals@isocpp.org>
List-Help: <https://support.google.com/a/isocpp.org/bin/topic.py?topic=25838>, <mailto:std-proposals+help@isocpp.org>
List-Archive: <https://groups.google.com/a/isocpp.org/group/std-proposals/>
List-Subscribe: <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>,
 <mailto:std-proposals+subscribe@isocpp.org>
List-Unsubscribe: <mailto:googlegroups-manage+399137483710+unsubscribe@googlegroups.com>,
 <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>
Xref: news.gmane.org gmane.comp.lang.c++.isocpp.proposals:26924
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/26924>

------=_Part_2360_1450864764.1468450064533
Content-Type: multipart/alternative; 
	boundary="----=_Part_2361_1036331333.1468450064533"

------=_Part_2361_1036331333.1468450064533
Content-Type: text/plain; charset=UTF-8

Hi all,

This is a cross posting from the SG14 reflector, regarding a draft proposal 
some of us are working on.

Very briefly, some of us are interested in having a standardized function 
which does not incur an upfront memory allocation to store the callable 
target, instead opting for a compile time specified buffer (stack 
allocated). This has been quite useful in several low latency domains such 
as gaming and electronic trading. In other words, a drop-in replacement for 
std::function, where all data is on the stack.

The original post is 
here: https://groups.google.com/a/isocpp.org/d/topic/sg14/1Sw_qEdIYes/discussion

The resultant draft proposal is 
here: https://github.com/WG21-SG14/SG14/blob/master/Docs/Proposals/NonAllocatingStandardFunction.pdf 

Please feel free to comment here or in the SG14 reflector. This is still 
very much in the draft stage, and all feedback is appreciated. The 
reference implementation is still a work in progress 
(https://github.com/WG21-SG14/SG14/blob/master/SG14/inplace_function.h).

Many thanks,
Carl

-- 
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/e00db911-40f5-4c11-a4b8-32bba77aa0a5%40isocpp.org.

------=_Part_2361_1036331333.1468450064533
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi all,<div><br></div><div>This is a cross posting from th=
e SG14 reflector, regarding a draft proposal some of us are working on.</di=
v><div><br></div><div>Very briefly, some of us are interested in having a s=
tandardized function which does not incur an upfront memory allocation to s=
tore the callable target, instead opting for a compile time specified buffe=
r (stack allocated). This has been quite useful in several low latency doma=
ins such as gaming and electronic trading. In other words, a drop-in replac=
ement for std::function, where all data is on the stack.<br></div><div><br>=
</div><div>The original post is here:=C2=A0https://groups.google.com/a/isoc=
pp.org/d/topic/sg14/1Sw_qEdIYes/discussion</div><div><br></div><div>The res=
ultant draft proposal is here:=C2=A0https://github.com/WG21-SG14/SG14/blob/=
master/Docs/Proposals/NonAllocatingStandardFunction.pdf=C2=A0</div><div><br=
></div><div>Please feel free to comment here or in the SG14 reflector. This=
 is still very much in the draft stage, and all feedback is appreciated. Th=
e reference implementation is still a work in progress (https://github.com/=
WG21-SG14/SG14/blob/master/SG14/inplace_function.h).</div><div><br></div><d=
iv>Many thanks,</div><div>Carl</div><div><br></div></div>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/e00db911-40f5-4c11-a4b8-32bba77aa0a5%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/e00db911-40f5-4c11-a4b8-32bba77aa0a5=
%40isocpp.org</a>.<br />

------=_Part_2361_1036331333.1468450064533--

------=_Part_2360_1450864764.1468450064533--

.
