[kepler-dev] Feedback on Actor Documentation Errors

Glen Jarvis glen at glenjarvis.com
Tue Mar 27 18:37:01 PDT 2007


I have only recently joined this list (about two weeks ago). And, I've  
been going through the Getting Started guide and will give feedback to  
Kirsten (I'm about four days behind getting this done when I said).

Anyhow, after going over this in much more detail, I noticed that some  
documentation in the Actor's have small typos. I recognize this is a  
separate issue than the Getting Started Guide (which I hope to finish  
tonight/tomorrow).

Where do I report documentation errors in actors. For example, here is  
an error I found in Exec (ptolemy.actor.lib.Exec). Actor is found in  
Components | General Purpose | Unix Command | Command Line Exec. The  
author is Christopher Hylands Brooks and Contributor is Edward A. Lee.

Notice that the words "get the" are repeated twice in error in the  
second sentence:

Execute a command as a separately running subprocess. A command is a  
single executable. To get the get the effect of executing a command  
provided in a shell interpreter, you can set command to "cmd"  
(Windows) or "sh" (Windows with Cygwin or Linux), and then provide  
commands at the input port. Note that each command must be terminated  
with a newline. For example, to open a model in vergil and run it, you  
can set command to "sh" and use a Const actor to provide on the input  
port the string:
  "vergil -run model.xml\n exit\n"

This actor uses java.lang.Runtime.exec() to invoke a subprocess named  
by the command parameter in a directory with an environment. Data from  
the input port (if any) is passed to the input of the subprocess. The  
subprocess is run until it exits and then contents of the output and  
error streams of the subprocess (if any) are passed to the output and  
error ports.
If the subprocess generates no data on the output or error stream,  
then the data on the corresponding port(s) will consist of the empty  
string.
A much more interesting actor could be written using a Kahn Process  
Network. This actor would generate output asynchronously as the  
process was executing.
Currently, there appears to be no way to get the subprocess to exit by  
passing it input. For example, if the command is set to the cat  
command, and we pass in a Const with the value \04, then the cat  
subprocess does not interpret this as the end of file marker and exit.
For information about Runtime.exec(), see:
http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html
and
http://mindprod.com/jgloss/exec.html



Warmest Regards,


Glen Jarvis
-- 
913-486-8775
glen at glenjarvis.com
http://www.glenjarvis.com

"You must be the change you wish to see in the world." -M. Gandhi


More information about the Kepler-dev mailing list