[#5218] Ruby Book Eng tl, ch1 question — Jon Babcock <jon@...>

13 messages 2000/10/02

[#5404] Object.foo, setters and so on — "Hal E. Fulton" <hal9000@...>

OK, here is what I think I know.

14 messages 2000/10/11

[#5425] Ruby Book Eng. tl, 9.8.11 -- seishitsu ? — Jon Babcock <jon@...>

18 messages 2000/10/11
[#5427] RE: Ruby Book Eng. tl, 9.8.11 -- seishitsu ? — OZAWA -Crouton- Sakuro <crouton@...> 2000/10/11

At Thu, 12 Oct 2000 03:49:46 +0900,

[#5429] Re: Ruby Book Eng. tl, 9.8.11 -- seishitsu ? — Jon Babcock <jon@...> 2000/10/11

Thanks for the input.

[#5432] Re: Ruby Book Eng. tl, 9.8.11 -- seishitsu ? — Yasushi Shoji <yashi@...> 2000/10/11

At Thu, 12 Oct 2000 04:53:41 +0900,

[#5516] Re: Some newbye question — ts <decoux@...>

>>>>> "D" == Davide Marchignoli <marchign@di.unipi.it> writes:

80 messages 2000/10/13
[#5531] Re: Some newbye question — matz@... (Yukihiro Matsumoto) 2000/10/14

Hi,

[#5544] Re: Some newbye question — Davide Marchignoli <marchign@...> 2000/10/15

On Sat, 14 Oct 2000, Yukihiro Matsumoto wrote:

[#5576] Re: local variables (nested, in-block, parameters, etc.) — Dave Thomas <Dave@...> 2000/10/16

matz@zetabits.com (Yukihiro Matsumoto) writes:

[#5617] Re: local variables (nested, in-block, parameters, etc.) — "Brian F. Feldman" <green@...> 2000/10/16

Dave Thomas <Dave@thomases.com> wrote:

[#5705] Dynamic languages, SWOT ? — Hugh Sasse Staff Elec Eng <hgs@...>

There has been discussion on this list/group from time to time about

16 messages 2000/10/20
[#5712] Re: Dynamic languages, SWOT ? — Charles Hixson <charleshixsn@...> 2000/10/20

Hugh Sasse Staff Elec Eng wrote:

[#5882] [RFC] Towards a new synchronisation primitive — hipster <hipster@...4all.nl>

Hello fellow rubyists,

21 messages 2000/10/26

[ruby-talk:5713] Re: Dynamic languages, SWOT ?

From: Hugh Sasse Staff Elec Eng <hgs@...>
Date: 2000-10-20 16:09:40 UTC
List: ruby-talk #5713
On Fri, 20 Oct 2000, Yasushi Shoji wrote:

> # this is class users point of view

	Yes.
> 
> IMHO, in order to use a method as a class user, you need to know
> 
> - name of the method
> - what parameters are required

This latter point is what I mean -- if someone passes you the wrong
parameter, or if some other "required"ed code has changed the nature
of that type (by redefining some method), then there is no protection.
> 
> yes, as you said, we can change methods behavior at runtime, but it's
> just "we can", not "depends on computer's mood".

But other code you use might, or people may misuse your code.
> 
> # it's good thing computers still don't have feelings yet ;)

Just over 2 months until 2001! :-)
> 
> [...]
> > It also assists in avoiding duplication of code, and makes things
> > extensible as more "subtypes" may be created. But the case statement has
> > an "else" (or "default") clause, so unknown types can be picked up.  If
> > one has thrown out the case statement, presumably one has to add some kind
> > of assertion to check the incoming type, but that would break the dynamic
> > nature of the software.  Or would it?
> 
> # this is class maintainer's point of view.

yes.
> 
> I'm not sure this is specific to Ruby only or came form other
> language, but it is recommended to use Object#respond_to? to ensure
> that the unknown object you have is capable to handle what you want.

Is there any reason why this cannot be built in to the language? Each
method has its own parameters, which have method calls associated with
them, so at invokation this could be tested. There is an overhead there,
so maybe some flag would be needed, or is there a reason other than
performance why this is silly?

> # yes, there are different methods with same name.
> 
> e.g.
> 
> class Some
>   def foo(o)
>     raise 'oops' unless o.respond_to? :bar
>     :
>     foo.bar
>   end
> end
> 
> > So is this situation just "one of those trade-offs one has to accept",
> > and it can be said that dynamic languages are better at different things
> > from strongly typed languages, but they are equally valid, just different?
> > Or is there some huge advantage that I have missed, which would make
> > the loss of these automatic checks a price worth paying?
> 
> IMHO, it's just different. and as usual, both side has pros and cons.

And are they therefore better at some applications, or just better for
certain styles of programming?
> 
> http://www.cyberdyne-object-sys.com/oofaq2/body/typing.htm#S2.4
> 
> ps. I'm no way an expert of OO languages. These are just MHO.
> --
>        yashi
> 
	Hugh
	hgs@dmu.ac.uk



In This Thread