#44 *args* omits script name (if any)


Scripting with Common Lisp would be a lot easier if *args* included the lisp file loaded by clisp.

E.g., ./myscript.cl and clisp.cl would have *args* => ("myscript.cl")

One workaround is to use shebang trickery. http://speely.wordpress.com/2010/11/27/writing-scripts-with-common-lisp/


  • Pascal J. Bourguignon

    You can use *load-pathname* to get the script name.

  • Sam Steingold

    Sam Steingold - 2010-12-01

    Pascal is right; *load-pathname* is what you want.

    You are asking me to introduce a gratuitous incompatibility with the previous versions of clisp.
    While I agree that it is a good idea to offer an interface similar to other CL implementations,
    I don't see much benefit in this specific change.

  • Sam Steingold

    Sam Steingold - 2010-12-01
    • labels: 100543 -->
    • status: open --> pending-wont-fix
  • Bruno Haible

    Bruno Haible - 2010-12-11

    I agree with Sam. The piece of code that you pointed to
    indicates that what people want in most cases is the list of arguments. That's why FaRe's function there
    contains a cdr call for most CL implementations. So clisp's ext:*args* corresponds already exactly
    to what people want in most cases. You're asking to change that; it makes no sense.

  • Bruno Haible

    Bruno Haible - 2010-12-11
    • labels: --> Extend ANSI CL
    • status: pending-wont-fix --> closed-wont-fix

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks