Re: (declare (pure ...))

Pietro Cerutti <[email protected]>
Newsgroups gmane.lisp.scheme.chicken
Message-ID <0107018d9203b435-3a9baabb-5154-4ee6-b6d1-ce79dddfad14-000000@eu-central-1.amazonses.com>
> On 9 Feb 2024, at 21:06, Al <[email protected]> wrote:
> 
> Hi,
> 
> 
> what does (declare (pure ..)) mean to csc? Is the function supposed to be
> 
> * only side-effect free, or ...
> 
> * also return the same value when called with the same arguments?

The first implies the second: to be able to choose from a set of return values for the same given argument, you do need to have side-effects, e.g., interact with a RNG which maintains state, read from a file, maintain an index into a circular vector of results, etc..

Here's what the docs say:
http://wiki.call-cc.org/man/5/Declarations#pure

-- 
Pietro Cerutti
I've pledged to give 10% of income to effective charities and invite you to join me.
https://givingwhatwecan.org

Sent from a small device - please excuse brevity and typos.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.