[#3101] Compile_err — "Fergus Hayman" <shayman@...>
[#3109] Is divmod dangerous? — Dave Thomas <Dave@...>
[#3110] my wish list for Ruby — Mathieu Bouchard <matju@...>
[#3119] Re: Min and max? — ts <decoux@...>
>>>>> "M" == Mathieu Bouchard <matju@CAM.ORG> writes:
[#3149] Retrieving the hostname and port in net/http — Roland Jesse <jesse@...>
Hi,
[#3154] 3-d arrays? — Hugh Sasse Staff Elec Eng <hgs@...>
Is there an idiom for 3-dimensional arrays in Ruby? I see that
[#3167] ruby.h needed to compile Interbase module — Jilani Khaldi <jilanik@...>
Hi all,
[#3189] BUG or something? — "Park Hee Sob" <phasis@...>
Hi,
[#3221] Re: Ruby & Interbase -- Please answer if you know! — ts <decoux@...>
>>>>> "J" == Jilani Khaldi <jilanik@tin.it> writes:
[#3222] Ruby coding standard? — Robert Feldt <feldt@...>
On Fri, 9 Jun 2000, Robert Feldt wrote:
Mathieu Bouchard <matju@cam.org> wrote:
[#3277] Re: BUG or something? — Aleksi Niemel<aleksi.niemela@...>
> |I am new to Ruby and this brings up a question I have had
Aleksi Niemel<aleksi.niemela@cinnober.com> writes:
On 12 Jun 2000, Dave Thomas wrote:
ts <decoux@moulon.inra.fr> writes:
[#3296] RE: about documentation — Aleksi Niemel<aleksi.niemela@...>
> I want to contribute to the ruby project in my spare time.
Aleksi Niemel<aleksi.niemela@cinnober.com> writes:
Hi,
On Tue, 13 Jun 2000, Toshiro Kuwabara wrote:
Hugh Sasse Staff Elec Eng <hgs@dmu.ac.uk> writes:
[#3331] Selling Rubies by the Carat — Dave Thomas <Dave@...>
[#3338] PID of child processes — Andrew Hunt <Andy@...>
[#3363] chomp! — "David Douthitt" <DDouthitt@...>
I was looking at the documentation for chomp and chomp! - and the results of chomp startled me to say the least.
"David Douthitt" <DDouthitt@cuna.com> writes:
[#3407] Waffling between Python and Ruby — "Warren Postma" <embed@...>
I was looking at the Ruby editor/IDE for windows and was disappointed with
[#3410] Exercice: Translate into Ruby :-) — Jilani Khaldi <jilanik@...>
Hi All,
Jilani Khaldi <jilanik@tin.it> writes:
Hi,
"NAKAMURA, Hiroshi" <nahi@keynauts.com> writes:
Hi, Dave,
Hello,
[#3453] Re: Static Typing( Was: Waffling between Python and Ruby) — Andrew Hunt <andy@...>
[#3515] Options database (was: Define & Include?) — claird@... (Cameron Laird)
In article <8ikot4$ki$0@216.39.170.247>, Dave LeBlanc <whisper@oz.net> wrote:
[#3516] Deep copy? — Hugh Sasse Staff Elec Eng <hgs@...>
Given that I cannot overload =, how should I go about ensuring a deep
In message "[ruby-talk:03516] Deep copy?"
On Tue, 20 Jun 2000, GOTO Kentaro wrote:
[#3532] Extension in C++? — Robert Feldt <feldt@...>
[#3541] function objects? — Johann Hibschman <johann@...>
Hi folks,
[#3544] A small quiz — Dave Thomas <Dave@...>
[#3588] Interface polymorphism — hal9000@...
Another question, guys.
[#3607] Is there a statistician in the house? — Dave Thomas <Dave@...>
[#3662] Ruby 1.4.5 install from Mandrake cooker rpms ?problem? — Charles Hixson <charleshixsn@...>
This is the first time that I've installed ruby, so
[#3685] no traffic — matz@... (Yukihiro Matsumoto)
Hi,
[#3694] Why it's quiet — hal9000@...
We are all busy learning the new language
Hi,
Hi,
Hi, matz,
Hi,
Hi,
[#3699] Multithreaded/Embedded Ruby? — "Warren Postma" <embed@...>
Is there any information on Thread safety in ruby. Suppose I embed Ruby in a
Hi,
[ruby-talk:03583] Re: Static Typing( Was: Waffling between Python and Ruby)
"Frank Mitchell" <frankm@bayarea.net> writes: > Dave Thomas wrote in message ... > >"Frank Mitchell" <frankm@bayarea.net> writes: > >> (I also believe not specifying the *contract* of each involved > >> object's methods is a mistake. On a large-ish Objective-C system I > >> worked on we had a few bugs caused by passing the wrong object that > >> just happened to implement the right method in the wrong way. > >> E.g. "price" as a message to return an attribute vs. "price" as a > >> command to initiate an involved calculation with numerous side > >> effects which fails because the object isn't in a consistent state.) > > Maybe I was misunderstanding the original poster, but he seemed to be > advocating DbC without any notion of types other than "object that responds > to message X". To state the obvious, if the language has a notion of > interface, protocol, or type, it's merely necessary to check that the object > conforms to that type, at compile-time or run-time, since the contract is > available in the interface/protocol/type definition. Not always (there are issues with polymorphism) but in general. > In the every-message-for-itself case, it would seem to me that you *would* > have to check each argument to make sure it implements all messages your > method expects, and that those messages conform to some required contracts > ... otherwise you're open to the problem I mention above. ... > I bow to your Pragmatism, a respectful touching of the forelock is sufficient ;-) > but DbC is supposed to detect design and code mismatches, and the > biggest mismatch I can think of is objects that don't implement > messages, or implement the name but not the expected external > behavior. If a language pretends to support DbC but doesn't support > that sort of error, it isn't true DbC. I guess you're a better programmer than me. The errors I see are typically failures of implementation, rather than passing around the wrong objects. In fact, if you discount the occasional nil pointer passed in when I was expecting a real object, I can honestly say I can't remember the last time I passed in the wrong kind of object to a routine. But I come back to my original point. For me at least, the biggest benefit of DbC is thinking about using it. It helps me organize the classes, clarifies my interfaces, and reduces coupling, all without a single runtime assertion. But, I'm not an expert on the subject, so I'll probably let it stop there. Thanks for the discussion. Dave