Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Message from discussion Newbie asking for help
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Steven M. Haflich  
View profile  
 More options Jun 26 2000, 3:00 am
Newsgroups: comp.lang.lisp
From: "Steven M. Haflich" <hafl...@pacbell.net>
Date: 2000/06/26
Subject: Re: Newbie asking for help

Steve Long wrote:

> What is a "free variable?"

> Erik Naggum wrote:

> > * "Steven M. Haflich" <hafl...@pacbell.net>
> > | BTW, in an earlier post Erik wrote:
> > |
> > |   You're using a free variable, nlines, in this code.  You should not
> > |   use a free variable unless you have very specific need for it.  This
> > |   does not affect the correctness of your code, however.
> > |
> > | I think this is incorrect.  Use of a free, undeclared variable name
> > | is illegal.

> >   "Free variable" is orthogonal to "undeclared variable".  Your gripe
> >   is about "undeclared variables".  I talked about "free variable".
> >   Please, some precision when you pick nits.

This is a reply to Erik's comment, not Steve Long's, but Erik's posting
has not yet appeared on my news server.

Indeed, the "free" use of a variable is orthogonal to the "undeclared"
use of a variable, but that does in itself not mean anything.  A Usenet
posting may be factually incorrect, and it may be stupid.  But it may
be stupid without being incorrect, and it may be incorrect without
being stupid, and it may be both stupid and incorrect.  These two
properties are orthogonal.  I know this because I have both read and
writen many Usenet postings over the past 17 years.

Similarly, a reference to a variable may be either or both of "undeclared"
and "free".  Rather than muck around in the meaning of these terms, I'd
ask Erik the following focussed question:

Assume a freshly-booted ANS-compliant CL implementation.  What behavior,
if any, is guaranteed by execution of the following form?

 (print (progn (setq pie 22/7) pie))

Now, in every implementation I know, this will print an approximation of
PI, with (if in the interative top level) various prompting and whitespace
handling.  It might (especially in compiled code) or might not warn about
the undeclared variable PI.  None of this matters to me.

I want to know whether this behavior (modulo toplevel interaction,
prompting, and newlinification) is defined by the ANS.  If you claim that
it is, please cite the ANS section references.  I claim that the behavior
is either "is an error" or "is undefined".

Do you disagree?


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.