From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Josep Portella Florit Newsgroups: gmane.lisp.guile.devel Subject: Re: bug#15228: [PATCH] Close output port of I/O pipes Date: Sat, 25 Jun 2016 15:51:18 +0200 Message-ID: <628d9c7d-e7d5-6e55-1361-316629db8b4b@primfilat.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1466877700 19133 80.91.229.3 (25 Jun 2016 18:01:40 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 25 Jun 2016 18:01:40 +0000 (UTC) Cc: guile-devel@gnu.org To: wingo@pobox.com Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Sat Jun 25 20:01:25 2016 Return-path: Envelope-to: guile-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 1bGrtV-0003Ii-5D for guile-devel@m.gmane.org; Sat, 25 Jun 2016 20:01:25 +0200 Original-Received: from localhost ([::1]:50888 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bGrtR-0003zm-3s for guile-devel@m.gmane.org; Sat, 25 Jun 2016 14:01:21 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:60828) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bGnzb-0001KS-Qd for guile-devel@gnu.org; Sat, 25 Jun 2016 09:51:28 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bGnzX-00021b-N4 for guile-devel@gnu.org; Sat, 25 Jun 2016 09:51:26 -0400 Original-Received: from primfilat.com ([71.19.148.100]:35088) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bGnzX-00021B-HN for guile-devel@gnu.org; Sat, 25 Jun 2016 09:51:23 -0400 Original-Received: from [192.168.0.4] (unknown [46.18.40.171]) by primfilat.com (Postfix) with ESMTPSA id 3228E57D5C; Sat, 25 Jun 2016 15:51:20 +0200 (CEST) Original-References: X-Enigmail-Draft-Status: N1110 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 71.19.148.100 X-Mailman-Approved-At: Sat, 25 Jun 2016 14:01:14 -0400 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Original-Sender: "guile-devel" Xref: news.gmane.org gmane.lisp.guile.devel:18437 Archived-At: > I dunno how much we should push this "processes are a single port" > abstraction. In many ways for OPEN_BOTH pipes it's easier to deal with > an input and an output port and a PID instead of the pipe abstraction. > WDYT? We could just expose `open-process' from (ice-9 popen) to start > with. It would be good to allow other fd's or ports to map to the chil= d > as well, e.g. stderr or any particular port; but I don't know what > interface we should expose. Since patching was inconvenient for me, I eventually used: (use-modules ((ice-9 popen) #:select (open-process))) Which works even though `open-process` is not exported. For me, exporting `open-process` and documenting it would be enough. I also like the Racket interface to processes: (I've mostly used the `process` procedure.)