From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6742 invoked by alias); 20 Jan 2018 16:07:02 -0000 Mailing-List: contact kawa-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: kawa-owner@sourceware.org Received: (qmail 6709 invoked by uid 89); 20 Jan 2018 16:07:01 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 spammy=day X-HELO: mail-io0-f179.google.com Received: from mail-io0-f179.google.com (HELO mail-io0-f179.google.com) (209.85.223.179) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 20 Jan 2018 16:06:59 +0000 Received: by mail-io0-f179.google.com with SMTP id f89so5230516ioj.4 for ; Sat, 20 Jan 2018 08:06:58 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=9hZ0WFd1Zl77IdC0RK8I5V7sipKOZnmok/x9m5xH44A=; b=C8APwjfbZSE0kgZ21IcfShS8+MydeKqURMEtdTTY/ga+bNR1b9aJHfHoJ+O+QANsJs pJSQLid2xJV51uBTFUjwLIQZrLcGRBl+ZoXeQ2qwhFKEkP86OON7XA/QCWDENbNDCAop s1wwB5crze9tsq08Q3PJo/BA33a8eJC/xWBkumtQYympIo+YcAptvp5ZR94iAV8ukRFP uLbHV3Cf44q+lEXxzt7uIyf80ssQNgdbkAEo/PHmY2GsHbOqZJoMvjAvc4H19Dbjk7hp JfLcNyG5nzwtgicHsLnXF4wF+3VhI62y6rZy07hwAISygvjywZhK7IZnQG19HmYaqvJp B2JA== X-Gm-Message-State: AKwxytebPxbgzAOLLLJji9T2sENgB4LDKqs02/d7WU29CmDWeZJUpxIu DfnDgD9N08XL68vifYsQqCnjDg8mIONJCgX3IoOx2Q2L X-Google-Smtp-Source: AH8x226tOTc8TLAHaJzCK7NAdyv8v5Av0QQr4CPFXMF2lXLliVVB9uf8UbiBOMx91Nc/oArFeuzRA+Alpr5uZ8+XS+Q= X-Received: by 10.107.1.3 with SMTP id 3mr2316764iob.221.1516464416881; Sat, 20 Jan 2018 08:06:56 -0800 (PST) MIME-Version: 1.0 Received: by 10.79.206.150 with HTTP; Sat, 20 Jan 2018 08:06:16 -0800 (PST) In-Reply-To: References: From: Duncan Mak Date: Sat, 20 Jan 2018 16:07:00 -0000 Message-ID: Subject: Re: First-class continuations in Kawa To: Per Bothner Cc: kawa mailing list Content-Type: text/plain; charset="UTF-8" X-IsSubscribed: yes X-SW-Source: 2018-q1/txt/msg00013.txt.bz2 Looks interesting. Is the work contained in only these two commits? https://gitlab.com/kashell/Kawa/commit/a8e678ebf7216e9fad9238e0b1c2442ea371c63c https://gitlab.com/kashell/Kawa/commit/f4228b57936de5a84dba0afcfac54196bec86fa4 Duncan. On Sat, Jan 20, 2018 at 1:46 AM, Per Bothner wrote: > On 01/19/2018 04:48 PM, Duncan Mak wrote: >> >> Hello, >> >> I came across Andrea Bernardini's thesis called First-Class >> Continuations on the Java Virtual Machine: An Implementation within >> the Kawa Scheme Compiler just the other day. >> >> >> https://www.politesi.polimi.it/bitstream/10589/108685/3/2015_07_Bernardini.pdf >> >> What happened to that work, was it integrated into the mainline release of >> Kawa? > > > Sorry, no. Andrea's work is available in the 'callcc' branch, but it has not > been merged into master. Worse, updates to master have not been merged > into the callcc branch. > > It would be useful to at least update the callcc branch with recent changes, > and then test, evaluate, and benchmark it. If it is useful, it should be > merged in. > Even if it is slow, as long as it doesn't hurt the default behavior. It is > my fault > that hasn't been done, but there were always other things to do. > > Long time ago, I started on another implementation of continuations based on > switch statements. (Each continuation point would be associated with an > index, > and each function would start with a switch statement with jumps to the > continuation points. Capturing a continuation would essentially be saving > the > corresponding switch index.) Some of that code is still in Kawa, but > commented out. Following up on that idea might be more efficient. Which > isn't really a good excuse for not merging in Andrea's work. > > If someone is interested in following up on this work, that would be great. > -- > --Per Bothner > per@bothner.com http://per.bothner.com/ -- Duncan.