From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.devel Subject: Re: Delimited continuations Date: Tue, 12 Dec 2017 15:17:46 +0100 Message-ID: <87374gows5.fsf@web.de> References: <87r2s2cyoj.fsf@web.de> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1513088765 29847 195.159.176.226 (12 Dec 2017 14:26:05 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 12 Dec 2017 14:26:05 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Dec 12 15:25:40 2017 Return-path: 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 ) id 1eOlV6-0006nU-BD for ged-emacs-devel@m.gmane.org; Tue, 12 Dec 2017 15:25:40 +0100 Original-Received: from localhost ([::1]:58649 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eOlVB-0000ha-Ul for ged-emacs-devel@m.gmane.org; Tue, 12 Dec 2017 09:25:45 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44936) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eOlNf-0002Xr-V9 for emacs-devel@gnu.org; Tue, 12 Dec 2017 09:18:04 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eOlNa-0007A2-D3 for emacs-devel@gnu.org; Tue, 12 Dec 2017 09:17:59 -0500 Original-Received: from mout.web.de ([212.227.17.11]:49883) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eOlNa-00078u-20 for emacs-devel@gnu.org; Tue, 12 Dec 2017 09:17:54 -0500 Original-Received: from drachen.dragon ([92.74.165.17]) by smtp.web.de (mrweb101 [213.165.67.124]) with ESMTPSA (Nemesis) id 0LxfOx-1f7vFv15GF-017IA9; Tue, 12 Dec 2017 15:17:48 +0100 In-Reply-To: (Stefan Monnier's message of "Mon, 11 Dec 2017 11:47:01 -0500") X-Provags-ID: V03:K0:Vwc3IvJI/z/4yLv+B3hlMclDbWyTnl6Ml0dFFQaysUw78sMDgqG 1hjG5I7jQROMOmDCERIGHXqrlHhwqBZbeUHxAJlYVvj+4i01917uVQ2dVq71cYnEFAdtrGG dheLWh/5gjY0+rEBnR5JfnXmAkMUrKcJo3PjFlngXFG1S4x9NAdXN2CEo7MTS83ipD+X5ii BotaxLoZeNG65G6pfThkA== X-UI-Out-Filterresults: notjunk:1;V01:K0:n5aE47ShV3A=:D5PWypS8nZsSmoylGEMPpw BVd42DvkeXdrcjgYBo4Lj+l3l2bvpUG/agr4by+5UXZvUFvhpNdI6QQaDMHgnSmNl5i+bVa2f 7rfR9KVlcEaa4jJ6I+Sw3OIhC0GR+8N9UQLS/wVJSUFyHMTJpxBpt3SB5itYsHuDsEjBuDQNX zkKVbkiSuiESntvydqnEbk7VWiap/s30NejGsSMB7HeAVEefk/ofprcXLx7i+Z9EMjpGOESJV +4BNDbBRKj+PhDW8cNjPRAUt7tqB13kExdvnHucRN0RU2+YHHHTxSF5Of3++JPuFHiwNXQE/p QHRip3qNNKHKd7q1QZ6Hu2YT06MG0EGzlLNCSFsPuh3U4Y/QLLiFh4RoKKv97kykV22P/0M5T zN5Gy4hTmQeizvHbZZeis4BAPXhpD0HUl4vb3mXwXyP0+Q8HD2rexIj3i+1y+w+q2A4lX3LNS QXO/jna87THUrUB1X+NrZ+J+tszAbcti/Kimhv7k1jsl2YYyQAi4hMdON8R51hoch4vv/tzZX JtWux3qCXOwBotAguY3n9ldNxKS6sTZAw2FXLn0ChB77kfqsZnp3o/4BuK7TkG/9oQ45Lst6t DimeNoR9Eg9ssnOwbAGEskESany51x+F4ypVkZrTdvFNkhyuTPkZYuEQmQtZbffBoJ02gSElt 9tm5RxCFXvwAEBaMO2S4ZJOb3ciP2z7QpGpsBAV2iOl1H4lEYwVqm8AiZ4GbMS7pvO7FeeIiT 7M9m0vZ8DVx8OAzLLRkj3/60TP+d25HBzROIiRChdRxLQhrgz/v+NBiCHebUyw0yzK3Oy4Mb X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 212.227.17.11 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:220923 Archived-At: Stefan Monnier writes: > Things get more interesting with side-effects: > > (defvar fwdc nil) > (reset (=CE=BB (p) > (if fwdl 3 > (setq fwdc t) > (shift p (=CE=BB (k) (k 5)))))) > > since we end up re-computing the `if` test and hence not using the `5` > provided to `k`. I think this case is a clear "bug" (because, IIUC, > (shift _ (=CE=BB (k) (k v))) should be equivalent to just `v`). Or we just don't call it continuation, which is misleading given the suggested implementation which gives you more something like a delimited re-execution. Anyway, my personal opinion is to make such stuff available so that people can experiment with it. Michael.