[#6954] Why isn't Perl highly orthogonal? — Terrence Brannon <brannon@...>

27 messages 2000/12/09

[#7022] Re: Ruby in the US — Kevin Smith <kevinbsmith@...>

> Is it possible for the US to develop corporate

36 messages 2000/12/11
[#7633] Re: Ruby in the US — Dave Thomas <Dave@...> 2000/12/19

tonys@myspleenklug.on.ca (tony summerfelt) writes:

[#7636] Re: Ruby in the US — "Joseph McDonald" <joe@...> 2000/12/19

[#7704] Re: Ruby in the US — Jilani Khaldi <jilanik@...> 2000/12/19

> > first candidates would be mysql and postgressql because source is

[#7705] Code sample for improvement — Stephen White <steve@...> 2000/12/19

During an idle chat with someone on IRC, they presented some fairly

[#7750] Re: Code sample for improvement — "Guy N. Hurst" <gnhurst@...> 2000/12/20

Stephen White wrote:

[#7751] Re: Code sample for improvement — David Alan Black <dblack@...> 2000/12/20

Hello --

[#7755] Re: Code sample for improvement — "Guy N. Hurst" <gnhurst@...> 2000/12/20

David Alan Black wrote:

[#7758] Re: Code sample for improvement — Stephen White <steve@...> 2000/12/20

On Wed, 20 Dec 2000, Guy N. Hurst wrote:

[#7759] Next amusing problem: talking integers (was Re: Code sample for improvement) — David Alan Black <dblack@...> 2000/12/20

On Wed, 20 Dec 2000, Stephen White wrote:

[#7212] New User Survey: we need your opinions — Dave Thomas <Dave@...>

16 messages 2000/12/14

[#7330] A Java Developer's Wish List for Ruby — "Richard A.Schulman" <RichardASchulman@...>

I see Ruby as having a very bright future as a language to

22 messages 2000/12/15

[#7354] Ruby performance question — Eric Crampton <EricCrampton@...>

I'm parsing simple text lines which look like this:

21 messages 2000/12/15
[#7361] Re: Ruby performance question — Dave Thomas <Dave@...> 2000/12/15

Eric Crampton <EricCrampton@worldnet.att.net> writes:

[#7367] Re: Ruby performance question — David Alan Black <dblack@...> 2000/12/16

On Sat, 16 Dec 2000, Dave Thomas wrote:

[#7371] Re: Ruby performance question — "Joseph McDonald" <joe@...> 2000/12/16

[#7366] GUIs for Rubies — "Conrad Schneiker" <schneik@...>

Thought I'd switch the subject line to the subject at hand.

22 messages 2000/12/16

[#7416] Re: Ruby IDE (again) — Kevin Smith <kevins14@...>

>> >> I would contribute to this project, if it

17 messages 2000/12/16
[#7422] Re: Ruby IDE (again) — Holden Glova <dsafari@...> 2000/12/16

-----BEGIN PGP SIGNED MESSAGE-----

[#7582] New to Ruby — takaoueda@...

I have just started learning Ruby with the book of Thomas and Hunt. The

24 messages 2000/12/18

[#7604] Any corrections for Programming Ruby — Dave Thomas <Dave@...>

12 messages 2000/12/18

[#7737] strange border-case Numeric errors — "Brian F. Feldman" <green@...>

I haven't had a good enough chance to familiarize myself with the code in

19 messages 2000/12/20

[#7801] Is Ruby part of any standard GNU Linux distributions? — "Pete McBreen, McBreen.Consulting" <mcbreenp@...>

Anybody know what it would take to get Ruby into the standard GNU Linux

15 messages 2000/12/20

[#7938] Re: defined? problem? — Kevin Smith <sent@...>

matz@zetabits.com (Yukihiro Matsumoto) wrote:

26 messages 2000/12/22
[#7943] Re: defined? problem? — Dave Thomas <Dave@...> 2000/12/22

Kevin Smith <sent@qualitycode.com> writes:

[#7950] Re: defined? problem? — Stephen White <steve@...> 2000/12/22

On Fri, 22 Dec 2000, Dave Thomas wrote:

[#7951] Re: defined? problem? — David Alan Black <dblack@...> 2000/12/22

On Fri, 22 Dec 2000, Stephen White wrote:

[#7954] Re: defined? problem? — Dave Thomas <Dave@...> 2000/12/22

David Alan Black <dblack@candle.superlink.net> writes:

[#7975] Re: defined? problem? — David Alan Black <dblack@...> 2000/12/22

Hello --

[#7971] Hash access method — Ted Meng <ted_meng@...>

Hi,

20 messages 2000/12/22

[#8030] Re: Basic hash question — ts <decoux@...>

>>>>> "B" == Ben Tilly <ben_tilly@hotmail.com> writes:

15 messages 2000/12/24
[#8033] Re: Basic hash question — "David A. Black" <dblack@...> 2000/12/24

On Sun, 24 Dec 2000, ts wrote:

[#8178] Inexplicable core dump — "Nathaniel Talbott" <ntalbott@...>

I have some code that looks like this:

12 messages 2000/12/28

[#8196] My first impression of Ruby. Lack of overloading? (long) — jmichel@... (Jean Michel)

Hello,

23 messages 2000/12/28

[#8198] Re: Ruby cron scheduler for NT available — "Conrad Schneiker" <schneik@...>

John Small wrote:

14 messages 2000/12/28

[#8287] Re: speedup of anagram finder — "SHULTZ,BARRY (HP-Israel,ex1)" <barry_shultz@...>

> -----Original Message-----

12 messages 2000/12/29

[ruby-talk:7161] Re: Ruby in the US

From: MICHAEL.W.WILSON@...
Date: 2000-12-13 17:09:25 UTC
List: ruby-talk #7161
     

     I'm quite fond of Mark-Jason Dominus' article on type systems and the 
     relative failure of strongly typed languages, as well as the success of 
     compile-time type checking most commonly found in the ML languages.  Here's 
     a link for anyone who is interested:
     
     http://perl.plover.com/yak/typing/typing.html
     
     
______________________________ Reply Separator _________________________________
Subject: [ruby-talk:7158] Re: Ruby in the US
Author:  ruby-talk@netlab.co.jp at smtplink
Date:    12/13/00 11:40 AM


hipster  <hipster@xs4all.nl> wrote:
>On Thu, 14 Dec 2000  00:10:02 +0900, Josh Stern wrote: 
>[snip]
>> I personally believe that some form of strong typing is invaluable 
>> for large projects, but it makes quick development much slower,
>> so Ruby is potentially a great compliment to strongly typed 
>> languages just for that reason.  But it would also be nice
>> to have flexible facilities for typing and 'design by contract' 
>> that operate at run time in Ruby when in 'debug mode', and
>> have little or no overhead when in normal mode - some
>> run time device that is, say, comparable to the assert() macro
>> in C.  I just started thinking about Ruby two weeks ago, and just 
>> got your excellent book last weekend, so I'm not qualified to
>> say what the best way is to implement that in Ruby (perhaps 
>> a mixin for adding extra type info and argument signatures 
>> to functions??).
     
>I've written a proof-of-principle extension to class Module to do just 
>that. It enables you to use typed attributes and typed functions 
>(i.e., typed parameters and a typed return value).
>
>The declaration syntax is obfuscated and needs some more thought: 
>
>class SomeClass
>  # attribute declaration: tattr [:name, Type], ... 
>
>  # C analogue: String foo; SomeClass bar; 
>  tattr [:foo, String], [:bar, SomeClass] 
>
>  # function declaration: tdef [:name, ReturnType, [[:param, Type], ...]] 
>
>  # C analogue: String f1(void)
>  tdef [:f1, String] do
>    body
>  end
>
>  # C analogue: void f2(String a, Array b)
>  tdef [:f2, nil, [[:a, String], [:b, Array]]] do 
>    body
>  end
>end
>
>It throws descriptive TypeMismatch exceptions: 
>
>attribute mismatch:
>  Type mismatch: attr Foo::name: expected String, got Fixnum 
>parameter and retval mismatch:
>  Type mismatch: func Foo::f3 param txt: expected String, got Bar
>  Type mismatch: func Foo::f4 retval: expected String, got NilClass 
>
>I'm fleshing out some details (syntax, maybe pre/postcondition 
>lambdas) and will announce it When It's Ready[tm]  ;)
     
It sounds like a good start - the tricky part, as I see it, 
is to deal with conditions that have dynamic run time scope. 
For instance, it would be nice to have the ability to check 
some analog of 'const correctness' - i.e. so it can
be checked that a function keeps a promise not to modify
its arguments.  We don't want that to mean the converse - that the 
function can only accept those arguments that cannot be modified. 
So it seems like the function would need to attach an attribute
to the arguments on entry saying "can't modify in this runtime 
scope", and remove it on exit (without destroying attributes 
posted by other functions).  That suggests the const attribute 
should be some sort of a bit vector with positions 
corresponding to depth in the call stack.
     
-= Josh
     
     
     

In This Thread

Prev Next