Hi Dan,

If all you want to do is to ensure that lisp always exits, you should be 
able to do something like this:

lisp -quiet -core /tmp/some.core <<END
(in-package User)
(ignore-errors
   (progn
     (load "halolex-02MAY.x86f")
     (load "../hal-converter/parse2hierdep.lisp")
     (load "../hal-converter/hierdep2il.lisp")
     (gf "$1")))
(quit)
END

Here's the test case I used...

$ lisp <<EOF
 > (ignore-errors (error "foo"))
 > (quit)
 > EOF

Sunil


Dan Su wrote:
> I used to use Allegro Lisp to run my program in a batch mode. i.e. I wrote a 
> shell script (see the next paragraph) to run programs. The Allegro handles 
> exceptions well. When a fatal error occur in alisp, it can continue 
> executing the following program automatically without interruption. However, 
> the cmucl will stop there waiting for a (quit) command from the keyboard. 
> Can anyone tell me how to make the CMUCL returns to shell when an error 
> occurs? Can setting flags in the command line solve this problem?BTW, I am 
> using the Redhat 8.0, the version of kernel is 2.4. And I am using the CMUCL 
> version of 18e. Thanks for your help.
> 
> #!/usr/bin/perl
> @ilfiles = `ls /tmp/output_il/*.il`;
> foreach $ilfile (@ilfiles) {
>    print "Working on $ilfile\n";
>    `/tmp/projects/hal/runhal.script $ilfile`;
> }
> the main content of runhal.script will be like this:
> 
> lisp -quiet -core /tmp/some.core <<END
> (in-package User)
> (load "halolex-02MAY.x86f")
> (load "../hal-converter/parse2hierdep.lisp")
> (load "../hal-converter/hierdep2il.lisp")
> (gf "$1")
> (quit)
> END
> 
> 
> Dan
> 
> _________________________________________________________________
> Tired of spam? Get advanced junk mail protection with MSN 8. 
> http://join.msn.com/?page=features/junkmail
> 
> 
> 

Reply via email to