[GAP Forum] running a file on GAP Terminal
Justin C. Walker
justin at mac.com
Wed Jul 8 02:14:12 BST 2009
Dear Neha and Forum:
First, it helps to know the following things:
- what version of GAP you are using
- what system you are using to run GAP
- what version of that system are you using
On Jul 7, 2009, at 17:35 , Neha Gupta wrote:
> I have written a simple GAP file saved as saved at
> "Users/neha/Documents/gap4r4/bin/test1.g " as follows:
>
> local a;
> a:=1;;
> a:=a*10;
> return a*a-8;
>
> The GAP package precisely is saved at the same location. At the GAP
> terminal
> when I type the following command :
>
> gap>Read("./test1.g")(); OR
>
> gap> Read("/test1.g")(); OR
>
> gap> Read("test1.g")(); OR
>
> gap> ReadAsFunction("./test1.g")() ;
>
> the following error is produced for the first three commands :
>
> *Error, file "./test1.g" must exist and be readable called from
> <function>( <arguments> ) called from read-eval-loop*.
I would guess from this error message that the file does not exist
where you think it does. Each process (like the GAP program) has
associated with it a directory, which is used when you give a name
like "./foo" or "foo", to locate the file (i.e., GAP assumes that
these file names reside in that associated directory).
First, try using the full file name.
> and the following error is produced for the last command :
>
> *<func> must be a function (not a boolean)*
I can't explain this one, but perhaps it is a quirk of the
implementation, dealing with a non-existent file in an odd way (I
can't duplicate this exact behavior on my system [GAP 4.4.12])
However, at least in the version of GAP I am using, ReadAsFunction()
is a function, returning as its value a handle on the function created
by executing the above.
On my system, I get this:
gap> a := 1;
1
gap> g:=ReadAsFunction("/tmp/x.g");
function( ) ... end
gap> g();
92
gap> a;
1
I hope this provides some help.
Regards,
Justin
--
Justin C. Walker
Curmudgeon-at-large
Director
Institute for the Absorption of Federal Funds
----
186,000 Miles per Second
Not just a good idea:
it's the law!
----
More information about the Forum
mailing list