Lisp HUG Maillist Archive

Re: Function arguments documentation

Unable to parse email body. Email id is 14897

RE: Function arguments documentation

Hi, 

Maybe I don't quite understand what you mean. 

The thing is that it's not that I wouldn't have any way to know the arguments. I would just like to use the standard features. 

With Best Regards, 
Teemu 

From: Anonymous [mailto:c4droid@foxmail.com] 
Sent: perjantai 18. tammikuuta 2019 4.49
To: Liikala Teemu <Teemu.Liikala@neste.com> 'Lispworks HUG' <lisp-hug@lispworks.com>
Subject: Re: Function arguments documentation

for example:
(defmacro while (test &rest body)
    `(do ()
        ((not ,test))
          ,@body))
&rest can search parameter list body,and using comma-at to fall a part list body and execute it.
did you understand what i meaning this?
---Original---
From: "Liikala Teemu"<Teemu.Liikala@neste.com>
Date: Thu, Jan 17, 2019 15:26 PM
To: "'Lispworks HUG'"<lisp-hug@lispworks.com>
Subject: Function arguments documentation

Hi, 
 
I have a question regarding code documentation. 
 
Let’s say I have the following function (only the beginning of it) and it has been evaluated. 
 
(defun multiply-by-first-after-summing-rest (a &rest rest)
  "This is where the commenting…
 
Then in LispWorks, I right-click and choose Expression → Documentation. 
 
======
Documentation for (DEFUN MULTIPLY-BY-FIRST-AFTER-SUMMING-REST):
Arguments: (A &REST REST)
This is where the commenting… 
 
Above I see “Arguments: (A &REST REST)” which is nice. 
 
But, if I compile the function the following happens. 
 
======
Documentation for (DEFUN PROS::MULTIPLY-BY-FIRST-AFTER-SUMMING-REST):
Arguments: (. DONT-KNOW)
This is where the commenting…
 
Above I see “Arguments: (. DONT-KNOW)” which is something not so useful. 
 
I guess the compilation loses somehow the arguments details? Would there perhaps be some way to keep the arguments details after compling? 
 
With Best Regards, 
Teemu 
 
Teemu Liikala
Associate, Dynamic Simulation, NAPCON
Neste Engineering Solutions Oy
P.O. Box 310, FI-06101 Porvoo, Finland
Visiting address: Teknologiantie 36, Kilpilahti, 06850 Kulloo
Tel. +358 50 458 2280
teemu.liikala@neste.com
www.napconsuite.com
www.neste.com
 

_______________________________________________
Lisp Hug - the mailing list for LispWorks users
lisp-hug@lispworks.com
http://www.lispworks.com/support/lisp-hug.html

Re: RE: Function arguments documentation

Unable to parse email body. Email id is 14900

Re: Function arguments documentation

More helpfully, I hope: in the v6.1 Lispworks User Guide and Reference Manual, you might find section 9.5 “Compiler Control” to be useful. I’m sure that section is in other versions of the manual (you didn’t say what version you were running), but v6.1 is the “Personal Edition”, so I’m going to guess you may be using that.

The short version: try adding (declare (optimize (speed 0) (debug 3))) and see what happens. Experiment with different declarations to see what combination gives you what you need (there are a lot of declarations focused on helping the compiler make various trade-offs or inform it about how you will use, e.g. lists returned from a function). You may have set up a set of default declarations (e.g., using proclaim) for the compiler in your init file (I do) that isn’t optimal for every usage; when I use the defaults, for instance, I don’t get the behavior you describe, but I do when I set (debug 0). Also I suspect there are different defaults when using deliver (at least they suggest setting different optimization levels to allow the compiler to run longer).

Welcome to LispWorks!
Brad

On Jan 18, 2019, at 1:42 AM, Anonymous <c4droid@foxmail.com> wrote:

Maybe you should read common lisp documention, the docuemt maybe can give to some answer.


With best regards,
Anonymous

---Original---
From: "Liikala Teemu"<Teemu.Liikala@neste.com>
Date: Fri, Jan 18, 2019 14:40 PM
To: "'Lispworks HUG'"<lisp-hug@lispworks.com>;
Subject: RE: Function arguments documentation

Hi,

Maybe I don't quite understand what you mean.

The thing is that it's not that I wouldn't have any way to know the arguments. I would just like to use the standard features.

With Best Regards,
Teemu

From: Anonymous [mailto:c4droid@foxmail.com]
Sent: perjantai 18. tammikuuta 2019 4.49
To: Liikala Teemu <Teemu.Liikala@neste.com>; 'Lispworks HUG' <lisp-hug@lispworks.com>
Subject: Re: Function arguments documentation

for example:
(defmacro while (test &rest body)
    `(do ()
        ((not ,test))
          ,@body))
&rest can search parameter list body,and using comma-at to fall a part list body and execute it.
did you understand what i meaning this?
---Original---
From: "Liikala Teemu"<Teemu.Liikala@neste.com>
Date: Thu, Jan 17, 2019 15:26 PM
To: "'Lispworks HUG'"<lisp-hug@lispworks.com>;
Subject: Function arguments documentation

Hi,
 
I have a question regarding code documentation.
 
Let’s say I have the following function (only the beginning of it) and it has been evaluated.
 
(defun multiply-by-first-after-summing-rest (a &rest rest)
  "This is where the commenting…
 
Then in LispWorks, I right-click and choose Expression → Documentation.
 
======
Documentation for (DEFUN MULTIPLY-BY-FIRST-AFTER-SUMMING-REST):
Arguments: (A &REST REST)
This is where the commenting…
 
Above I see “Arguments: (A &REST REST)” which is nice.
 
But, if I compile the function the following happens.
 
======
Documentation for (DEFUN PROS::MULTIPLY-BY-FIRST-AFTER-SUMMING-REST):
Arguments: (. DONT-KNOW)
This is where the commenting…
 
Above I see “Arguments: (. DONT-KNOW)” which is something not so useful.
 
I guess the compilation loses somehow the arguments details? Would there perhaps be some way to keep the arguments details after compling?
 
With Best Regards,
Teemu
 
Teemu Liikala
Associate, Dynamic Simulation, NAPCON
Neste Engineering Solutions Oy
P.O. Box 310, FI-06101 Porvoo, Finland
Visiting address: Teknologiantie 36, Kilpilahti, 06850 Kulloo
Tel. +358 50 458 2280
teemu.liikala@neste.com
www.napconsuite.com
www.neste.com
 

_______________________________________________
Lisp Hug - the mailing list for LispWorks users
lisp-hug@lispworks.com
http://www.lispworks.com/support/lisp-hug.html

RE: Function arguments documentation

Hi Brad, 

Thank you for the message. I'm using LW 7.1.1. 

I tested with different optimization levels and yes; with (debug 0) the arguments information is not there but, for example, with (debug 1) it is there. Perhaps the function documention's "(. DONT-KNOW)" is more like a side-effect of debug level 0. 

Well, I've been using LispWorks for many years now but, for example, the compiler parameters are quite unfamiliar territory. :-) (Basically we've had the same optimization for years, and usually it's not touched.) 

With Best Regards, 
Teemu 

From: Bradford Miller [mailto:bradfordmiller@mac.com] 
Sent: perjantai 18. tammikuuta 2019 15.29
To: Liikala Teemu <Teemu.Liikala@neste.com>
Cc: Lispworks HUG <lisp-hug@lispworks.com>
Subject: Re: Function arguments documentation

More helpfully, I hope: in the v6.1 Lispworks User Guide and Reference Manual, you might find section 9.5 “Compiler Control” to be useful. I’m sure that section is in other versions of the manual (you didn’t say what version you were running), but v6.1 is the “Personal Edition”, so I’m going to guess you may be using that.

The short version: try adding (declare (optimize (speed 0) (debug 3))) and see what happens. Experiment with different declarations to see what combination gives you what you need (there are a lot of declarations focused on helping the compiler make various trade-offs or inform it about how you will use, e.g. lists returned from a function). You may have set up a set of default declarations (e.g., using proclaim) for the compiler in your init file (I do) that isn’t optimal for every usage; when I use the defaults, for instance, I don’t get the behavior you describe, but I do when I set (debug 0). Also I suspect there are different defaults when using deliver (at least they suggest setting different optimization levels to allow the compiler to run longer).

Welcome to LispWorks!
Brad


On Jan 18, 2019, at 1:42 AM, Anonymous <c4droid@foxmail.com> wrote:

Maybe you should read common lisp documention, the docuemt maybe can give to some answer.


With best regards,
Anonymous
---Original---
From: "Liikala Teemu"<Teemu.Liikala@neste.com>
Date: Fri, Jan 18, 2019 14:40 PM
To: "'Lispworks HUG'"<lisp-hug@lispworks.com>
Subject: RE: Function arguments documentation

Hi, 

Maybe I don't quite understand what you mean. 

The thing is that it's not that I wouldn't have any way to know the arguments. I would just like to use the standard features. 

With Best Regards, 
Teemu 

From: Anonymous [mailto:c4droid@foxmail.com] 
Sent: perjantai 18. tammikuuta 2019 4.49
To: Liikala Teemu <Teemu.Liikala@neste.com> 'Lispworks HUG' <lisp-hug@lispworks.com>
Subject: Re: Function arguments documentation

for example:
(defmacro while (test &rest body)
    `(do ()
        ((not ,test))
          ,@body))
&rest can search parameter list body,and using comma-at to fall a part list body and execute it.
did you understand what i meaning this?
---Original---
From: "Liikala Teemu"<Teemu.Liikala@neste.com>
Date: Thu, Jan 17, 2019 15:26 PM
To: "'Lispworks HUG'"<lisp-hug@lispworks.com>
Subject: Function arguments documentation

Hi, 
 
I have a question regarding code documentation. 
 
Let’s say I have the following function (only the beginning of it) and it has been evaluated. 
 
(defun multiply-by-first-after-summing-rest (a &rest rest)
  "This is where the commenting…
 
Then in LispWorks, I right-click and choose Expression → Documentation. 
 
======
Documentation for (DEFUN MULTIPLY-BY-FIRST-AFTER-SUMMING-REST):
Arguments: (A &REST REST)
This is where the commenting… 
 
Above I see “Arguments: (A &REST REST)” which is nice. 
 
But, if I compile the function the following happens. 
 
======
Documentation for (DEFUN PROS::MULTIPLY-BY-FIRST-AFTER-SUMMING-REST):
Arguments: (. DONT-KNOW)
This is where the commenting…
 
Above I see “Arguments: (. DONT-KNOW)” which is something not so useful. 
 
I guess the compilation loses somehow the arguments details? Would there perhaps be some way to keep the arguments details after compling? 
 
With Best Regards, 
Teemu 
 
Teemu Liikala
Associate, Dynamic Simulation, NAPCON
Neste Engineering Solutions Oy
P.O. Box 310, FI-06101 Porvoo, Finland
Visiting address: Teknologiantie 36, Kilpilahti, 06850 Kulloo
Tel. +358 50 458 2280
teemu.liikala@neste.com
www.napconsuite.com
www.neste.com
 

_______________________________________________
Lisp Hug - the mailing list for LispWorks users
lisp-hug@lispworks.com
http://www.lispworks.com/support/lisp-hug.html


_______________________________________________
Lisp Hug - the mailing list for LispWorks users
lisp-hug@lispworks.com
http://www.lispworks.com/support/lisp-hug.html

Re: Function arguments documentation

Unable to parse email body. Email id is 14906

Updated at: 2020-12-10 08:29 UTC