difference in exec/3 for Windows and Unix (0931)

From: Kish Shen <ks15_at_icparc.ic.ac.uk>
Date: Thu 03 May 2001 12:07:58 PM GMT
Message-Id: <E14vHtm-0001eT-00@holborn.icparc.ic.ac.uk>
If the first argument of exec/3 is given as a list, there is currently a
difference between Windows and Unix. For example, if the exec runs an
eclipse, the following works under Unix:


[eclipse 1]: argv(0, E), exec([E, '-e', "writeln(hello), writeln(there)"], [], _).

E = "/homes/ks15/EclipseDev/bin/i386_linux/eclipse.exec"
Yes (0.00s cpu)
[eclipse 2]: hello
there

However, this does not work under Windows, giving a syntax error:

string stream 4: syntax error: unexpected end of file
| writeln(hello),
|               ^ here

It does not like the eclipse goals to be unquoted, and the following is
needed:

[eclipse 1]: argv(0, E), exec([E, '-e', '"writeln(hello), writeln(there)"'], [], _).

which has the additional explicit double quotes around the goals.
Received on Thu May 03 13:08:00 2001

This archive was generated by hypermail 2.1.8 : Wed 16 Nov 2005 06:08:06 PM GMT GMT