Madness this way lies...

J

John Carter

Ah me. In a fit of over user friendliness I did a couple of
the most colossally stupid things in a class.

I, with head hung in shame, record them here so that...
* others may avoid them,
* I remember to avoid them later,
* writers of obfusticated ruby may benefit.

a) Name a method the same as something in the Kernel module and then
forget that you have done so.

In particular I overrode "puts" in something that didn't inherit from
IO. OUCH! That really does make printing debugging statements
interesting.

b) Put various key Ruby terms (eg. "raise") in alias statements.

c) Do two or more of these very very dumb things in the same body of code.




John Carter Phone : (64)(3) 358 6639
Tait Electronics Fax : (64)(3) 359 4632
PO Box 1645 Christchurch Email : (e-mail address removed)
New Zealand

"We have more to fear from
The Bungling of the Incompetent
Than from the Machinations of the Wicked." (source unknown)
 
H

Hal Fulton

John said:
Ah me. In a fit of over user friendliness I did a couple of the most
colossally stupid things in a class.

[snip]

But aren't you glad you *can* do these things... ;)


Hal
 
J

Joel VanderWerf

Hal said:
John said:
Ah me. In a fit of over user friendliness I did a couple of the most
colossally stupid things in a class.

[snip]

But aren't you glad you *can* do these things... ;)


Hal

But then there is the punishment...

100.times {puts "I will not do colossally stupid things in a class."}
 
M

M. Edward (Ed) Borasky

Joel said:
Hal said:
John said:
Ah me. In a fit of over user friendliness I did a couple of the most
colossally stupid things in a class.

[snip]

But aren't you glad you *can* do these things... ;)


Hal

But then there is the punishment...

100.times {puts "I will not do colossally stupid things in a class."}
But ... but ... but ... you *redefined* "puts"

:)
 
R

Rick DeNatale

This is a chellange, I am sure I can do better or was it worse?

This reminds me of the cartoons which are sprinked throughout
"Smalltalk-80: Bits of History, Words of Advice." No doubt long out
of print.

Some of these were

A black frame with a cartoon word bubble saying "OOPS! I just typed
'Processor <- nil.'!"

A plane with the right wing coming off and flames coming out, and the
pilot saying "I think we'd better boot and resume!"

A woman painting a floor with a paint labled "New System" she's
painted herself into a small corner labled "Old System" then she steps
out of the corner, paints it and says "The nice thing about Smalltalk
is that the paint dries instantly!"

And my favorite, a series of pictures on the left word balloons on the right:

"Here we go!"
3+4
FLASH "Oh...too bad"
later
"Once more!"
3+4

DzzDD,,
Geep
Z,4hcn
"Hmmmmm"
later
"This out to be better!"
3+4

LAD Compiler doe
not understand => ^h,,3ep

"Well now!..."
later
3+4
Class text image
"Oh, I think I know what that is..."
later
3+4
9
"All Right!
Hey everybody, Smalltalk works!"
 
J

John Johnson

You're probably right about it being out of print, but you can downloa=
d =
a PDF from the following URL. The scan is a bit fuzzy but it's fairly = =

readable.

<http://www.iam.unibe.ch/~ducasse/FreeBooks/BitsOfHistory/>

Cool! Thanks. Used on Amazon start at US$41.66!

I still think Ruby would be great in the Smalltalk environment.
Squeak + Ruby =3D Reek ?

Maybe I'll get around to writing it myself one day. Better do a Google =

first :)

As far as redefining, I seem to have a penchant for doing that with 'typ=
e'.

Regards,
JJ

-- =

Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
 
E

Eric Hodel

Ah me. In a fit of over user friendliness I did a couple of the
most colossally stupid things in a class.

I, with head hung in shame, record them here so that...
* others may avoid them,
* I remember to avoid them later,
* writers of obfusticated ruby may benefit.

a) Name a method the same as something in the Kernel module and then
forget that you have done so.

In particular I overrode "puts" in something that didn't inherit
from
IO. OUCH! That really does make printing debugging statements
interesting.

Actually, I love to do this for tests, especially when I use open-uri.

http://blog.segment7.net/articles/2005/11/20/open-uri-makes-tests-easy
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,582
Members
45,057
Latest member
KetoBeezACVGummies

Latest Threads

Top