From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Noam Postavsky Newsgroups: gmane.emacs.devel Subject: Re: [elpa] master b5f4061: Drop forced lambda's from stream (Bug#30626) Date: Tue, 4 Jun 2019 11:43:21 -0400 Message-ID: References: <20190604002517.28469.52294@vcs0.savannah.gnu.org> <20190604002519.251AC209A5@vcs0.savannah.gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="229480"; mail-complaints-to="usenet@blaine.gmane.org" Cc: Emacs developers To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jun 04 17:44:21 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hYBbp-000xbZ-4J for ged-emacs-devel@m.gmane.org; Tue, 04 Jun 2019 17:44:21 +0200 Original-Received: from localhost ([127.0.0.1]:54195 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hYBbo-0007V1-64 for ged-emacs-devel@m.gmane.org; Tue, 04 Jun 2019 11:44:20 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:56858) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hYBbA-0007Th-OK for emacs-devel@gnu.org; Tue, 04 Jun 2019 11:43:41 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hYBb9-0002Xc-PZ for emacs-devel@gnu.org; Tue, 04 Jun 2019 11:43:40 -0400 Original-Received: from mail-oi1-x233.google.com ([2607:f8b0:4864:20::233]:47078) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hYBb9-0002Up-L4 for emacs-devel@gnu.org; Tue, 04 Jun 2019 11:43:39 -0400 Original-Received: by mail-oi1-x233.google.com with SMTP id 203so15869784oid.13 for ; Tue, 04 Jun 2019 08:43:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=B0TbUOyGLEKtjqyqzHtCJ11pXhpKNwfLyZAdNSZAw9Q=; b=I/94l4ZDvlc3lJ1iZGQR0bWjUXMEDl+ROoIE6CQ94sQdMrodXihK31ztxuxkfw6jMZ LFIYKJ77e5A+bpS3INUmi//sZGEede5NBQ00uHDkdba44QYvMHhyD6XVosjwGRWilswF RG59GOY7gUGh3M2+6CpxZ5AOlrc5+ADb9PX5Iz/V7ktQ+5D2tfr5XYFTeuvvDLbRB4bQ iB7W2znhowYioNVJM37wbsMWfoljZc69TJbBBaUMXzTlfHdghfyCs06alsf+pFTx8tDC aKzVq0LKlt5t6ZjCYJsBR7Cf8N4oe0eAbtCZlX+Vp2xy2qsSKqObG84mH3ra0ghhnIa9 AGPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=B0TbUOyGLEKtjqyqzHtCJ11pXhpKNwfLyZAdNSZAw9Q=; b=ZVPupt4PiUFlS/RiAS1IArchqgW9C9dd8TymIymWSgT6TeAKe/OJnuUt3rKzJNKUMy Y42YhC+JlR8xRf8djBJLY0vquMUnfY5x30cPITGYeMjNRDa92mMPb1/m3/LlcWxWLIAR MAzC8AAMJIz4dpUHis6IeWRPl/SPgU6Bl+ILgsO/ZaYwP6C7EsIZIkdCf9cRWOsi+ZZx GFg8EgpR8zcGCJMItIBnCtyIrEGYAGcPUGYHe9Y7VDSWRHOeXc63azmcdpK61JbtdYtS fLWbs21UBrz/yvCRujKFIdrZODmNVB4XHgMHr8v6n82YyLqaLYZxYvgwca3tm2qOe1DH 0plQ== X-Gm-Message-State: APjAAAUnrj9QK8uZOAjeShQgAUDWC/qzCQJVTMlda9yGFxdbb6uLhAqU XAx00Og5L4dk9xGw/pcR/kwaMurJA2TbwU9lUcs= X-Google-Smtp-Source: APXvYqw6BvjUoinMnSaTW5qkVNasmo899wAKqofweYNEcvdAR8nCNd6XO4/z/BZO18mXwvZ0RQCJkdsQUjlt56YNQRM= X-Received: by 2002:aca:b456:: with SMTP id d83mr5004426oif.177.1559663018526; Tue, 04 Jun 2019 08:43:38 -0700 (PDT) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::233 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:237250 Archived-At: On Tue, 4 Jun 2019 at 09:27, Stefan Monnier wrote: > > > Let the stream id distinguish between forced and unforced stream > > values. When the value is forced, replace the lambda with its result. > > This lets the lambda and anything it references be garbage collected. > > Doesn't the same "memory leak" affect thunks? Yes. > How 'bout the patch below Looks good to me. I would have done something like that if I'd thought of it.