From: chiflowerpower
Subject: Newbie on Streams
Date: 
Message-ID: <9b1e633d.0204291202.53c067c@posting.google.com>
What exactyl are streams?  Why is there something called grey streams?

What are the variables for some of the standard streams?
Which stream variables can you change the value of?
How do you create new streams?

From: Barry Margolin
Subject: Re: Newbie on Streams
Date: 
Message-ID: <yIhz8.31$0j2.1123@paloalto-snr2.gtei.net>
In article <···························@posting.google.com>,
chiflowerpower <··············@hotmail.com> wrote:
>What exactyl are streams?  Why is there something called grey streams?
>
>What are the variables for some of the standard streams?
>Which stream variables can you change the value of?
>How do you create new streams?

This sounds like homework, in which case the whole point is to find out
what *you* know, not what we know.

-- 
Barry Margolin, ······@genuity.net
Genuity, Woburn, MA
*** DON'T SEND TECHNICAL QUESTIONS DIRECTLY TO ME, post them to newsgroups.
Please DON'T copy followups to me -- I'll assume it wasn't posted to the group.
From: Kenny Tilton
Subject: Re: Newbie on Streams
Date: 
Message-ID: <3CCDAADA.BB31B94C@nyc.rr.com>
> 
> This sounds like homework, in which case the whole point is to find out
> what *you* know, not what we know.

This "spank the homework cheater" tradition on c.l.l. is getting old.
Why not just ignore them?

-- 

 kenny tilton
 clinisys, inc
 ---------------------------------------------------------------
"Harvey has overcome not only time and space but any objections."
                                                        Elwood P. Dowd
From: Barry Margolin
Subject: Re: Newbie on Streams
Date: 
Message-ID: <TWhz8.33$0j2.919@paloalto-snr2.gtei.net>
In article <·················@nyc.rr.com>,
Kenny Tilton  <·······@nyc.rr.com> wrote:
>> This sounds like homework, in which case the whole point is to find out
>> what *you* know, not what we know.
>
>This "spank the homework cheater" tradition on c.l.l. is getting old.
>Why not just ignore them?

Because someone else is likely to notice the unresponded question and
decide to respond.

Also, when people don't get a response to questions, they often re-post
them because they think their message didn't propagate.

-- 
Barry Margolin, ······@genuity.net
Genuity, Woburn, MA
*** DON'T SEND TECHNICAL QUESTIONS DIRECTLY TO ME, post them to newsgroups.
Please DON'T copy followups to me -- I'll assume it wasn't posted to the group.
From: Kenny Tilton
Subject: Re: Newbie on Streams
Date: 
Message-ID: <3CCDB3F6.C9B4380F@nyc.rr.com>
Barry Margolin wrote:
> 
> In article <·················@nyc.rr.com>,
> Kenny Tilton  <·······@nyc.rr.com> wrote:
> >> This sounds like homework, in which case the whole point is to find out
> >> what *you* know, not what we know.
> >
> >This "spank the homework cheater" tradition on c.l.l. is getting old.
> >Why not just ignore them?
> 
> Because someone else is likely to notice the unresponded question and
> decide to respond.

So what? I was looking forward to an answer, I keep wondering what all
the excitement is over gray (Grey?) streams. Research is research, you
go to a book or the Web or to experts live and in color. 

And so what if, in a different circumstance where they are supposed to
write code, a cheater gets an answer and does not learn anything? I
thought that was /their/ problem. "You're only cheating yourself.",
right?

Meanwhile c.l.l. comes off like a bunch of finger-wagging
holier-than-thou school marms. I forget, did we want Lisp to be more
popular or less popular? 

> Also, when people don't get a response to questions, they often re-post
> them because they think their message didn't propagate.

Big deal. "ignore them" works for re-posts as well as orginals.

I have had hard technical questions completely ignored here, but
presumed cheaters bring a deluge of wise guys either spanking the
evil-doer or posting hilarious (not) obfuscated solutions. Seems like a
lot of folk (not you, Barry) get their rocks off pissing on cheaters but
get damn quiet when help is sought in good faith. 

Well, I gotta go google up on gra/ey streams....

-- 

 kenny tilton
 clinisys, inc
 ---------------------------------------------------------------
"Harvey has overcome not only time and space but any objections."
                                                        Elwood P. Dowd
From: Erik Naggum
Subject: Re: Newbie on Streams
Date: 
Message-ID: <3229117434637395@naggum.net>
* Kenny Tilton <·······@nyc.rr.com>
| So what?  I was looking forward to an answer, I keep wondering what all
| the excitement is over gray (Grey?) streams.  Research is research, you
| go to a book or the Web or to experts live and in color.

  So do your own research and publish it.  Demanding is the privilege of
  the paying customer, and refunding rather than complying is the privilege
  of the responsible vendor.

| And so what if, in a different circumstance where they are supposed to
| write code, a cheater gets an answer and does not learn anything?  I
| thought that was /their/ problem.  "You're only cheating yourself.",
| right?

  One general concept of the free exchange of information on the Net is
  that people are equals in principle and that their differences are the
  nothing more than accidents of time.  The whole deal is to save people
  time, just like science is supposed to let people avoid re-discovering
  everything on their own, philosophy is supposed to let really smart
  people sort out the really hard problems so average people can just use
  the solutions, etc.  The whole point with the ability of human beings
  being able to learn from the experience of others is to save time.

  When this is not longer true, when the sharing actually wastes time, some
  people are causing damage to an important part of the fabric of the Net
  and of the value of sharing experience in the first place.  I mean, on
  IRC, I recently had the immensely curious experience of helping a guy
  through a problem, but he did not quite understand it.  I had fetched my
  good old Introduction to Algorithms by Cormen, et al, and worked through
  some of the algorithm with them, then asked him if he had any algorithm
  books.  He had Introduction to Algorithms by Cormen, et al, right beside
  him.  So I told him, in no uncertain terms, where to find the answer.  He
  _still_ managed to ask me what it said.  (Unlike some people here, he did
  in fact understand that he had done something wrong, and apologized and
  appreciated the help he had received, arguing by way of explanation that
  it had been so much easier to ask me than to read the book.)

| Meanwhile c.l.l. comes off like a bunch of finger-wagging
| holier-than-thou school marms. I forget, did we want Lisp to be more
| popular or less popular?

  Start funding people to further your goal, and you gain the right to
  complain that your goal is not shared by those you have funded.  If you
  do not want to do this, what do you do to help?  Why are you not simply
  researching the question and answering the guy himself?  All of us
  learned this by study, but faced with people who refuse to study and
  still demand help, you tell us that you could not learn it unless one of
  us could help you.  That means that you are no longer an equal,
  accidentally ignorant by an accident of time -- you would be helpless
  without our specific sacrifice of time for you.  This is generally not
  worth anyone's while, and many people get pissed off by whining losers.

| I have had hard technical questions completely ignored here, but presumed
| cheaters bring a deluge of wise guys either spanking the evil-doer or
| posting hilarious (not) obfuscated solutions.  Seems like a lot of folk
| (not you, Barry) get their rocks off pissing on cheaters but get damn
| quiet when help is sought in good faith.

  Why do you complain about it rather than do something about it?

  Generally, though, students should go ask their teacher when they are
  stuck.  That way, the teacher can better adapt his lecturing/teaching to
  the actual needs of students, rather than working with false positives.
  It is not just the cheater who loses if this is widespread.

| Well, I gotta go google up on gra/ey streams....

  You do that.  Hint: Gray is a person's name, used adjectively.

///
-- 
  In a fight against something, the fight has value, victory has none.
  In a fight for something, the fight is a loss, victory merely relief.

  Post with compassion: http://home.chello.no/~xyzzy/kitten.jpg
From: Thien-Thi Nguyen
Subject: Re: Newbie on Streams
Date: 
Message-ID: <kk9bsc2ey99.fsf@glug.org>
Erik Naggum <····@naggum.net> writes:

>   One general concept of the free exchange of information on the Net
>   is that people are equals in principle and that their differences
>   are the nothing more than accidents of time.
>
>   [analysis of motivations]

the analysis neglects to mention that observed behavior is observed in a
context that is time-dependent.  also, important cases where time is of
concern are not taken into account, precluding discussion on thresholds.

of course, no one writes the refbot, so it is easy to get annoyed.  o
refbot, rescue us into usenet2faq mode!

thi
From: Kent M Pitman
Subject: Re: Newbie on Streams
Date: 
Message-ID: <sfwofg2dwbx.fsf@shell01.TheWorld.com>
Barry Margolin <······@genuity.net> writes:

> In article <···························@posting.google.com>,
> chiflowerpower <··············@hotmail.com> wrote:
> >What exactyl are streams?  Why is there something called grey streams?
> >
> >What are the variables for some of the standard streams?
> >Which stream variables can you change the value of?
> >How do you create new streams?
> 
> This sounds like homework, in which case the whole point is to find out
> what *you* know, not what we know.

Wow, I wish there would be courses that required this kind of homework
instead of stupid 'flatten' functions.

Here is some useful source material for getting the answers to these 
questions:

Information about ANSI Common Lisp:

 http://www.xanalys.com/software_tools/reference/HyperSpec/Front/index.htm

Information about Gray Streams, a feature that did NOT go into ANSI CL
because it was proposed (by David Gray) and failed, but that has been 
added anyway in some CL implementations.  See cleanup issue 
STREAM-DEFINITION-BY-USER, accessible from:

 http://world.std.com/~pitman/CL/index.html

NOTE: The "Gray" in "Gray Streams" is is not a color (nor a colour),
      it's a person (David Gray)'s name, and so is not correctly
      localized outside the US by misspelling it.

Allegro CL, by the way, uses an alternative set of extensions to Gray
Streams, which I think they call Simple Streams.  You can probably
find info on this at their web site.  For example, they're mentioned in
 http://www.franz.com/support/documentation/6.1/doc/streams.htm
There may be a more-primary reference, but if so I don't know it.
From: chiflowerpower
Subject: Re: Newbie on Streams
Date: 
Message-ID: <9b1e633d.0204300453.1c91cbcf@posting.google.com>
Barry Margolin <······@genuity.net> wrote in message news:<·················@paloalto-snr2.gtei.net>...
> This sounds like homework, in which case the whole point is to find out
> what *you* know, not what we know.

this is a quick judgement.  actually I posed the questions myself to
guide my own study.  there seems to be no worth in discussing these
questions though, since they don't invite any analysis, comparison, or
evaluation.

anyway, now I plan to look at some of the details of *terminal-io*

anyone care to give some examples of terminals?  I've read that a
terminal is a device that enables you to communicate with a computer,
generally a combination of keyboard and display screen.  then terminal
emulation is software that emulates the behavior of a terminal?

are/were terminals pieces of hardware that follow protocols?  Is that
the reason for the different types of terminals--different ways of
controlling the input from a keyboard and the output to a display.
From: Marc Spitzer
Subject: Re: Newbie on Streams
Date: 
Message-ID: <slrnact9gg.2vem.marc@oscar.eng.cv.net>
In article <····························@posting.google.com>, 
chiflowerpower wrote:
> Barry Margolin <······@genuity.net> wrote in message 
> news:<·················@paloalto-snr2.gtei.net>...
>> This sounds like homework, in which case the whole point is to find out
>> what *you* know, not what we know.
> 
> this is a quick judgement.  actually I posed the questions myself to
> guide my own study.  there seems to be no worth in discussing these
> questions though, since they don't invite any analysis, comparison, or
> evaluation.
> 

Well if it looks like a duck and quacks, its probably a duck.  In 
your case it was not a duck.  

If you want a better response show that you have done some work
on the problem and ask specific questions that flow from what 
you have already done and you will get a completely different 
response.

marc

> anyway, now I plan to look at some of the details of *terminal-io*
> 
> anyone care to give some examples of terminals?  I've read that a
> terminal is a device that enables you to communicate with a computer,
> generally a combination of keyboard and display screen.  then terminal
> emulation is software that emulates the behavior of a terminal?
> 
> are/were terminals pieces of hardware that follow protocols?  Is that
> the reason for the different types of terminals--different ways of
> controlling the input from a keyboard and the output to a display.
From: Kent M Pitman
Subject: Re: Newbie on Streams
Date: 
Message-ID: <sfw6629w7va.fsf@shell01.TheWorld.com>
··············@hotmail.com (chiflowerpower) writes:

> anyway, now I plan to look at some of the details of *terminal-io*
> 
> anyone care to give some examples of terminals?  I've read that a
> terminal is a device that enables you to communicate with a computer,
> generally a combination of keyboard and display screen.  then terminal
> emulation is software that emulates the behavior of a terminal?
> 
> are/were terminals pieces of hardware that follow protocols?  Is that
> the reason for the different types of terminals--different ways of
> controlling the input from a keyboard and the output to a display.

I can't speak for others, but I find *TERMINAL-IO* is almost never the
right thing portably, mostly because implementations have diverged too
much on the meaning.  I recommend just never ever using it in portable 
code.

*TERMINAL-IO* originally existed on the Lisp Machine as the thing
which held a window pane's IO stream, so that *STANDARD-INPUT* and
*STANDARD-OUTPUT* could defaultly be synonoym streams for it.
*TERMINAL-IO* had a different value in each window, which established
a kind of I/O focus for that window.  Originally, a "terminal" was
just a window, i.e., a virtual "terminal".  These were simple ways of
partitioning the display of one program from the display of another,
giving each a sense of owning the whole terminal, just as packages
give the sense that a single programmer owns the entire space of
available symbols.  Yes, terminals could sometimes share I/O buffers, 
but so can packages sometmes share symbols.  Still, the important thing
is that the abstraction is that of putting on blinders and not having to
see what's around you...

HOWEVER, when CLTL borrowed the name, it was all weakly enough
specified that some vendors (such as LispWorks) have bound
*TERMINAL-IO* to a different window utterly unrelated to the
application (the stupid little b&w window you fall through to when the
window system fails you); the Lisp Machine called the moral equivalent
of this the "cold load stream".  Confusing these means already with
just those two implementations, there's almost no overlap between two
conforming implementations...

IMO, the main use of *TERMINAL-IO* is in non-portable code, and only
even then when you've read vendor documentation that tells you how to
expect it to work in the particular implementation(s) you are using...

- - - - - 

FWIW, I think it's often questionable to borrow someone's idea and
keep the name but change the detailed semantics.  ISLISP, for example,
has many ideas borrowed from ANSI CL.  However, we _tried_ as best we
could to rename operators and other defined symbols that we borrowed
when the result of the borrowing was also to gratuitously change the
meaning.  (I think there were still some minor lapses in a couple of
places, but overall we did pretty well.)

Note that I have no problem with borrowing by subsetting since it's
not the same kind of incompatible.  But subsetting means more than
just "randomly leaving parts out".  (I've seen people argue that it's
ok to leave out lexical variables and only have special variables and
that this is a 'subset' of CL, for example.  There are ways to do this,
but the 'lazy' one of just assuming free variables are special are not
an example.)
From: Paolo Amoroso
Subject: Re: Newbie on Streams
Date: 
Message-ID: <rLXOPClWfQyYklnZHnq42bzNFThS@4ax.com>
On 30 Apr 2002 05:53:03 -0700, ··············@hotmail.com (chiflowerpower)
wrote:

> anyone care to give some examples of terminals?  I've read that a
> terminal is a device that enables you to communicate with a computer,
> generally a combination of keyboard and display screen.  then terminal

Here is a site with extensive information on terminals:

  Video Terminal Information
  http://www.cs.utk.edu/~shuford/terminal_index.html


Paolo
-- 
EncyCMUCLopedia * Extensive collection of CMU Common Lisp documentation
http://www.paoloamoroso.it/ency/README
[http://cvs2.cons.org:8000/cmucl/doc/EncyCMUCLopedia/]
From: Kenny Tilton
Subject: Re: Newbie on Streams
Date: 
Message-ID: <3CCDBC0A.70CFAB26@nyc.rr.com>
chiflowerpower wrote:
> 
> ... Why is there something called grey streams?

/Gray/ streams, named after the person Gray, not the colour grey. And
the answer is...

 http://www.franz.com/support/documentation/6.1/doc/gray-streams.htm

... in section 1.

-- 

 kenny tilton
 clinisys, inc
 ---------------------------------------------------------------
"Harvey has overcome not only time and space but any objections."
                                                        Elwood P. Dowd