Re: default process forms

Eric Knauel <[email protected]> Tue, 11 Apr 2006 13:25:21 +0200
Newsgroups gmane.lisp.scheme.scsh
Message-ID <[email protected]>
On Tue 11 Apr 2006 12:02, "xiaolei zhang" <[email protected]> writes:

> hello:
>
> 	The Scsh Reference Manual said:
>
> ------------------------------------------------------------------------------------
> The default case (prog arg1 ... argn) is also implicitly backquoted. That is, it is equivalent to:
>
>     (begin (apply exec-path `(prog arg1 ... argn)))
>
> -------------------------------------------------------------------------------------
>
>    I had tried:
>
> 	1、(ls)
> 	2、(begin (apply exec-path `(ls)))
>     3、(run (ls))
>
> 	1 fails, and 2,3 worked. But the reference manual saids 1 is equivalent to 2, why 1 fails? The error messages are:
>
> ----------------------------
> Error: undefined variable
>        ls
>        (package user)
> ----------------------------

The manuals just says that `(ls)' is a process form equivalent to some
other process form.  However, process forms are only useful as
arguments for the various `run' macros or `exec-epf' (see Section
2.3).  Entering `(ls)' at the scsh prompt tries to eval a function
call (without any arguments) to a function bound to the undefined
variable `ls'. 

-Eric
-- 
"Excuse me --- Di Du Du Duuuuh Di Dii --- Huh Weeeheeee" (Albert King)