Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!security!genrad!decvax!harpo!utah-cs!jed From: jed@utah-cs.UUCP (Jed Krohnfeldt) Newsgroups: net.lang.lisp Subject: Re: Franz Lisp Process Help??? - (nf) Message-ID: <1927@utah-cs.UUCP> Date: Thu, 22-Sep-83 09:25:07 EDT Article-I.D.: utah-cs.1927 Posted: Thu Sep 22 09:25:07 1983 Date-Received: Fri, 23-Sep-83 21:54:10 EDT References: ecn-ec.1140 Lines: 29 I typically use process in the following way: (process command from-pipe to-pipe) where command is the unix command to be executed from-pipe is a franz port opened for writing to the command to-pipe is a franz port opened for reading from the command The two ports, from and to, are opened by process and can subsequently be used to write to and read from the command. So (patom "foo" from-pipe) will write the string "foo" to the command, and (ratom to-pipe) will read the next atom coming from command. If the command needs to be executed with arguments, simply escape the space between the command and its arguments: (process ls\ -aslF) For a simple example, try writing a C program that does nothing but loop endlessly, reading a string and writing that string back out again. Then use process to set up a from and to port to that program. Now, write to the program using (patom "something" from) followed by a read from the program with (ratom to). What you get back should be identical to what you gave it. Jed Krohnfeldt ..!harpo!utah-cs!jed krohnfeldt@utah-20