[#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:5781] Re: Dynamic languages, SWOT ?

From: Hugh Sasse Staff Elec Eng <hgs@...>
Date: 2000-10-23 10:07:13 UTC
List: ruby-talk #5781
Trimming mercilessly...
On Sat, 21 Oct 2000, Charles Hixson wrote:

> Hugh Sasse Staff Elec Eng wrote:
> 
> > On Sat, 21 Oct 2000, Charles Hixson wrote:
> >
> > parameters it only make sense for them to be in a subset of the
> > class heirarchy.   There is no way to express this constraint in Ruby
> 
> This is a run time check in a dynamically bound language.  I'm pretty sure

I think your example below gives a good reason why...
> 
> > or Python.  I have not really used Lisp or Smalltalk.  What I mean is
> > that it is a weakness [in typing?] to allow a parameter to be of *any*
> > class, for example when you know it must be a Numeric
> > or descendent of Numeric.  So does this weakness create a different
	[...] 
> address this in some way or other.  But notice that none of those are really
> dynamically bound.  Ruby's type system seems more akin to that of Self.  Run
> time checks are the only way to handle this.  If you want, you could raise an
> exception.  How else would you want this to be handled?  You can't know at

I was thinking that some tests could be done at compile time...so
I have not considered the run-time case.

> "compile" time what the type of the variable will be.  But it would be nice

I see freom below, why not.
> 
> > strength which outweighs the inability to type-check at compilation time?
> 
> Actually, there's nothing wrong with passing in a totally separately declared
> class, as long as it ended up with the appropriate API.  This is both a
> strength and a weakness, but I think more of a strength.  Consider:
> 
> There is a standard problem that models inheritance in classes and
> evolution.  Call it the bird problem.

Ah, the "Birds fly.  Except penguins, kiwis, ostriches,.." problem

> Now a Rubyesque solution would be a bit different than the normal one, and
> would involve mix-ins.
> consider constructing separate trees of inheritance, one for descent, and the
> other for capabilities.  To create a species, you inherit from the
> inheritance tree, and mix-in the appropriate capabilities.  Thus penguins
> don't end up with flight being denied, but just not being available.  I'm not
> sure that this is an appropriate construct, I'm still thinking about it, but
> it is a way in which mix-ins more than substitute for the lack of  multiple
> inheritance.
> 
At first I thought this ansered a different question, but now I see that
Mix-in effectively changes a "type", and pushes it outside the regular
class system.  That fundamentally damages class based type checking.

> >         Hugh
> >         hgs@dmu.ac.uk
> 
> -- (c) Charles Hixson
> --  Addition of advertisements or hyperlinks to products specifically
> prohibited
> 
	Hugh> 


In This Thread