From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Nicolas Petton Newsgroups: gmane.emacs.devel Subject: Re: [ANN] New library stream.el in ELPA Date: Wed, 14 Oct 2015 21:31:04 +0200 Message-ID: <87pp0hjlhj.fsf@petton.fr> References: <87d1whk75h.fsf@petton.fr> <87si5djubt.fsf@petton.fr> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" X-Trace: ger.gmane.org 1444851167 29852 80.91.229.3 (14 Oct 2015 19:32:47 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 14 Oct 2015 19:32:47 +0000 (UTC) To: John Wiegley , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Oct 14 21:32:34 2015 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ZmRmr-0003lq-4h for ged-emacs-devel@m.gmane.org; Wed, 14 Oct 2015 21:32:33 +0200 Original-Received: from localhost ([::1]:44140 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZmRmq-0002Jr-A2 for ged-emacs-devel@m.gmane.org; Wed, 14 Oct 2015 15:32:32 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58393) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZmRlV-00028U-N8 for emacs-devel@gnu.org; Wed, 14 Oct 2015 15:31:10 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZmRlT-0000IN-0G for emacs-devel@gnu.org; Wed, 14 Oct 2015 15:31:09 -0400 Original-Received: from out3-smtp.messagingengine.com ([66.111.4.27]:48641) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZmRlS-0000IA-Qr for emacs-devel@gnu.org; Wed, 14 Oct 2015 15:31:06 -0400 Original-Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 6A156209CD for ; Wed, 14 Oct 2015 15:31:06 -0400 (EDT) Original-Received: from frontend1 ([10.202.2.160]) by compute1.internal (MEProxy); Wed, 14 Oct 2015 15:31:06 -0400 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-sasl-enc :x-sasl-enc; s=smtpout; bh=Fi/+Tpef0ZKrwUgQxmrFMcG/mdw=; b=O/+bv 3L+2SEKncWmb54txt6ODmoXAMC+Hsr9K9CrtgYOZsVfrAdaZLj1gHVuDx4vm5pt7 NRiXFdD8wQ7pk2LMjvMPn8yrIDUO/IB5Hzo6YG6bc1DCKUfi6J/TTvq4PC5p+aFS ftD2PA6zNGmmClZz7alAReMEwAFcDM0IxR/vDg= X-Sasl-enc: rTo1ZNHGUtub8SKWFFkoOoLKNUg8eejDVKvflafL0N99 1444851066 Original-Received: from blueberry (arennes-658-1-227-233.w92-139.abo.wanadoo.fr [92.139.240.233]) by mail.messagingengine.com (Postfix) with ESMTPA id D536DC0001F; Wed, 14 Oct 2015 15:31:05 -0400 (EDT) In-Reply-To: User-Agent: Notmuch/0.19 (http://notmuchmail.org) Emacs/25.0.50.7 (x86_64-unknown-linux-gnu) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 66.111.4.27 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:191588 Archived-At: --=-=-= Content-Type: text/plain John Wiegley writes: >>>>>> Nicolas Petton writes: > >> stream.el is based on lazy form evaluation with memoization (which is >> exactly what you describe IIUC), that I didn't need to expose it so I kept >> it private to the library, see `stream--delay' and `stream-force': > >> https://github.com/NicolasPetton/stream/blob/master/stream.el#L62 > > What if you expose the lower-level API, and then make lazy streaming a useful > example. I.e., call your module "thunk.el" or "lazy.el". What if I extract it in a thunk.el library and install it in master (with proper tests), and have stream.el use that? (I could also put stream.el in Emacs, but Stefan thought it would be better to have it in ELPA). > I would have uses for such a library beyond streams of value: for example, > querying an external process for a tidbit of information, but abstracting this > interaction to appear as a "value" within a thunk. Yes, that would be really nice! Nico --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: GPGTools - http://gpgtools.org iQEcBAEBCAAGBQJWHq14AAoJECM1h6R8IHkQGP0H/1iUbIAHVhTrQHLfQuyOjd/V Uo5TG+CO5TO9jo2UtuaBrMv7m2k7SVc9Tk8swGawzmdVtmTBUM4Z5LkM6/dP0l5A mu+igUqHg7pnqDEsxITA4ULhdvBw9KTgZf/ziDRH6hGnmkBDOCei9/PYDCbYwddM 0P2cSJmUuY4550X6AnKvxh223Z8joq+dDEdg5BbxIe3I1shMlyeAyRYQRqHvvduQ NbaDchWfHI6/gdkQF2oxqM5gJ3+2VO+dgZ8xQRDKveyntu9IaGnAMV+llG6waZdE kesVriejX4DdNfRr5WFDdzyMG5mdUzpnLObRxQKv/mJ5HR1O6Qjcl91N0I9YxVQ= =UNay -----END PGP SIGNATURE----- --=-=-=--