Man, seriously. That’s so fucking funny. Can’t we make irb do
something similar? I really hate that irb quits on me when I write
“quit” at the prompt. I’d much rather have it exit on me on ^D only. I
especially like how they take the time to explain that ^D is EOF,
nikolai
--
Nikolai Weibull: now available free of charge at http://bitwi.se/!
Born in Chicago, IL USA; currently residing in Gothenburg, Sweden.
main(){printf(&linux["\021%six\012\0"],(linux)["have"]+"fun"-97);}
I never understood that. :) Let's find out what a lot of users naturally
want to do, and add code to inform them they're wrong, rather than
do what the user wanted.
That was one of my very first experiences with Python a few years
back, and I quickly concluded the culture of There Really Is Only One
Way To Do It was probably not for me... <grin>
Regards,
Bill
Just put "def exit() 'Use Ctrl-D (i.e. EOF) to exit.' end" in your
.irbrc file. Then you'll never have to worry about it again.
Personally, I don't have a problem with involuntarily typing "exit"
into IRB. Anyway, the exit method is part of the standard library, not
a function of IRB. I don't think changing it by default in IRB would be
a good thing.
$ irb
> def quit
> puts 'No way'
> end
=> nil
> quit
Quits IRB. (So does calling quit())
$ python
>>> def quit():
.. print "No way"
..
>>> quit()
No way
>>>
Small, and pointless reason, but perhaps this has something to do with it.
David Mitchell
(Solidly on the ruby side of the fence).
If you make it def self.quit, it'll work.
> % python
>>>> quit
>>>> 'Use Ctrl-D (i.e. EOF) to exit.'
>>>>
> %
>
> Man, seriously. That’s so fucking funny. Can’t we make irb do
> something similar?
Decades back I wrote a Lisa-like psycho-analysis program in an early
version of M$ Basic. While using it I noticed a small bug in it and said
"list" to list the program.
I had forgotten I was still talking to the program so my train of thought
was totally derailed when the computer replied...
Really?
Why?
John Carter Phone : (64)(3) 358 6639
Tait Electronics Fax : (64)(3) 359 4632
PO Box 1645 Christchurch Email : john....@tait.co.nz
New Zealand
Carter's Clarification of Murphy's Law.
"Things only ever go right so that they may go more spectacularly wrong later."
From this principle, all of life and physics may be deduced.
> I had forgotten I was still talking to the program so my
> train of thought was totally derailed when the computer replied...
> Really?
> Why?
Back in my uni days, a similar thing happened to a comp-sci friend of
mine.
We were working on a VAX-VMS system, and the project [and heavily
overloaded machine] was frustrating my friend, so he typed [monty python
style]
RUN AWAY
And the terminal echoed
RUNNING AWAY ...
A few seconds passed while we all looked on gobsmacked, until the
teminal continued
<ERROR 43-1> PROGRAM 'AWAY' NOT FOUND
> Nikolai Weibull wrote:
> > % python
> > Python 2.3.5 (#1, Apr 28 2005, 14:11:32)
> > [GCC 3.3.5-20050130 (Gentoo Linux 3.3.5.20050130-r1,
> > ssp-3.3.5.20050130-1, pie- on linux2
> > Type "help", "copyright", "credits" or "license" for more information.
> > >>> quit
> > >>> 'Use Ctrl-D (i.e. EOF) to exit.'
> > >>>
> > %
> > Man, seriously. That's so fucking funny. Can't we make irb do
> > something similar? I really hate that irb quits on me when I write
> > "quit" at the prompt. I'd much rather have it exit on me on ^D only. I
> > especially like how they take the time to explain that ^D is EOF,
> Just put "def exit() 'Use Ctrl-D (i.e. EOF) to exit.' end" in your
> ..irbrc file. Then you'll never have to worry about it again.
The problem isn’t exit, but quit.
> Personally, I don't have a problem with involuntarily typing "exit"
> into IRB. Anyway, the exit method is part of the standard library, not
> a function of IRB. I don't think changing it by default in IRB would be
> a good thing.
Hm, perhaps not. One could give it a counter, so that if I type quit
twice in a row it’ll first warn me that I should be uisng ^D, and then
the next time it’ll actually quit,
Nikolai Weibull wrote:
> Charles Steinman wrote:
>
> > Nikolai Weibull wrote:
>
> > > % python
> > > Python 2.3.5 (#1, Apr 28 2005, 14:11:32)
> > > [GCC 3.3.5-20050130 (Gentoo Linux 3.3.5.20050130-r1,
> > > ssp-3.3.5.20050130-1, pie- on linux2
> > > Type "help", "copyright", "credits" or "license" for more information.
> > > >>> quit
> > > >>> 'Use Ctrl-D (i.e. EOF) to exit.'
> > > >>>
> > > %
>
> > > Man, seriously. That's so fucking funny. Can't we make irb do
> > > something similar? I really hate that irb quits on me when I write
> > > "quit" at the prompt. I'd much rather have it exit on me on ^D only. I
> > > especially like how they take the time to explain that ^D is EOF,
>
> > Just put "def exit() 'Use Ctrl-D (i.e. EOF) to exit.' end" in your
> > ..irbrc file. Then you'll never have to worry about it again.
>
> The problem isn't exit, but quit.
My bad. The "exit" in the Python response threw me off. You can do the
same with quit, though.
>
> > Personally, I don't have a problem with involuntarily typing "exit"
> > into IRB. Anyway, the exit method is part of the standard library, not
> > a function of IRB. I don't think changing it by default in IRB would be
> > a good thing.
>
> Hm, perhaps not. One could give it a counter, so that if I type quit
> twice in a row it'll first warn me that I should be uisng ^D, and then
> the next time it'll actually quit,
I still don't understand why quit should be an exception to every other
method, including the functionally identical exit. And isn't
accidentally typing ^D about as easy as accidentally typing "quit"? It
seems actually easier to me, since it's only one off from a normal
capital D whereas "quit" is four letters long.
> > > Just put "def exit() 'Use Ctrl-D (i.e. EOF) to exit.' end" in your
> > > ..irbrc file. Then you'll never have to worry about it again.
> > The problem isn't exit, but quit.
> My bad. The "exit" in the Python response threw me off. You can do the
> same with quit, though.
Yes. It seems they were in such a hurry to add that message that they
never considered that not all people draw a mental parallel between
“quit” and “exit”. Also, they forgot a comma efter the “i.e.” (yes, I
am _that_ anal retentive).
> > > Personally, I don't have a problem with involuntarily typing
> > > "exit" into IRB. Anyway, the exit method is part of the standard
> > > library, not a function of IRB. I don't think changing it by
> > > default in IRB would be a good thing.
Man, I thought you were playing along here (see below).
> > Hm, perhaps not. One could give it a counter, so that if I type
> > quit twice in a row it'll first warn me that I should be uisng ^D,
> > and then the next time it'll actually quit,
> I still don't understand why quit should be an exception to every
> other method, including the functionally identical exit. And isn't
> accidentally typing ^D about as easy as accidentally typing "quit"? It
> seems actually easier to me, since it's only one off from a normal
> capital D whereas "quit" is four letters long.
Didn’t you read the subject? I’m being very sarcastic actually. My
intent was to point out that instead of simply adding a hook for quiting
the interpreter when the user types “quit”, the Python people added a
message that says how you should exit properly instead.
If I type “quit” or “exit” in a TUI, I expect the application to exit,
returning me to the terminal. Instead of doing that they force me to
use ^D, which one has to be a pretty advanced UNIX user to know about (I
do, but I can see how many new users won’t),
Oh. Heh. After a full day of working tech support, I think my
sarcasm-o-meter is kind of dulled. D'oh.
Here's my story: Again back in the "old" days I was having a particularly
hard time getting this one program to run correctly. Not normally given to
strong language, I was so frustrated I typed HELL and the command line and
pressed a return.
The system prompted logged me out!
It turns out the system really didn't care about my choice of words. It was
just that HELL was a proper abbreviation for HELLO, which (for reasons I
never fully understood) was an alias for BYE or LOGOUT.
--
-- Jim Weirich j...@weirichhouse.org http://onestepback.org
-----------------------------------------------------------------
"Beware of bugs in the above code; I have only proved it correct,
not tried it." -- Donald Knuth (in a memo to Peter van Emde Boas)
Makes more sense that way.
Since the printer was in the same room, and I was the only person there
(it was about 0300) I was just piping the output of the nroff command
directly to it.
After having successfully done this four or five times, I ran another
nroff command to print the latest copy for proof reading ... then I
waited ... and waited ... and waited.
After about five minutes, this came out on the line printer:
The world will end!
As you can imagine, this freaked me out just a little. At that point, I
decided that the last version I had was good enough :-).
It wasn't until about five years later, when I was reading the eqn
manual ... eqn is the filter that formats mathematics for nroff ... and
saw the following:
"All rows of the matrix must contain the same
number of columns, or the world will end"
It took me about ten minutes to stop laughing.