GNU bug report logs - #23500
Manual:4.3 Guile Scripting: Show to a layman that Guile can invoke shell commands, which are common in bash scripts.

Previous Next

Package: guile;

Reported by: Evan Davis <erdavis7 <at> gmail.com>

Date: Mon, 9 May 2016 23:19:02 UTC

Severity: normal

Done: Andy Wingo <wingo <at> pobox.com>

Bug is archived. No further changes may be made.

Full log


Message #10 received at 23500-done <at> debbugs.gnu.org (full text, mbox):

From: Andy Wingo <wingo <at> pobox.com>
To: Evan Davis <erdavis7 <at> gmail.com>
Cc: 23500-done <at> debbugs.gnu.org
Subject: Re: bug#23500: Manual:4.3 Guile Scripting: Show to a layman that
 Guile can invoke shell commands, which are common in bash scripts.
Date: Tue, 28 Feb 2017 16:23:45 +0100
On Tue 10 May 2016 00:48, Evan Davis <erdavis7 <at> gmail.com> writes:

> In §4.3 (Guile Scripting) please mention §7.2.7 (Processes), or at
> least the system/system* and open-pipe procedures.  Maybe include an
> example of a guile script invoking shell commands, as is common in
> bash.  As a layman, the manual's scripting section left me unsure
> whether Guile could easily replace my typical bash scripts, and I
> needed further help from Wingo on <irc://irc.freenode.net/guile>.

Tx for the report.  Added this text to the end of the section:

  Finally, seasoned scripters are probably missing a mention of
  subprocesses.  In Bash, for example, most shell scripts run other
  programs like @code{sed} or the like to do the actual work.

  In Guile it's often possible get everything done within Guile itself, so
  do give that a try first.  But if you just need to run a program and
  wait for it to finish, use @code{system*}.  If you need to run a
  sub-program and capture its output, or give it input, use
  @code{open-pipe}.  @xref{Processes}, and @xref{Pipes}, for more
  information.

Andy




This bug report was last modified 8 years and 142 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.