[#8566] Visions for 2001/1.7.x development? — Robert Feldt <feldt@...>

Hi matz and other Ruby developers,

18 messages 2001/01/03
[#8645] Re: Visions for 2001/1.7.x development? — matz@... (Yukihiro Matsumoto) 2001/01/04

Hi,

[#8580] bug?? — jmichel@... (Jean Michel)

I don't understand the following behaviour:

19 messages 2001/01/03

[#8633] Interesting Language performance comparisons - Ruby, OCAML etc — "g forever" <g24ever@...>

13 messages 2001/01/04

[#8774] No :<, :>, etc. methods for Array — "Brian F. Feldman" <green@...>

So, why not include Comparable in Array by default? It shouldn't have any

28 messages 2001/01/07
[#8779] Re: No :<, :>, etc. methods for Array — matz@... (Yukihiro Matsumoto) 2001/01/07

Hi,

[#8780] Re: No :<, :>, etc. methods for Array — "Brian F. Feldman" <green@...> 2001/01/07

matz@zetabits.com (Yukihiro Matsumoto) wrote:

[#8781] Re: No :<, :>, etc. methods for Array — gotoken@... (GOTO Kentaro) 2001/01/07

In message "[ruby-talk:8780] Re: No :<, :>, etc. methods for Array"

[#8782] Re: No :<, :>, etc. methods for Array — "Brian F. Feldman" <green@...> 2001/01/07

gotoken@math.sci.hokudai.ac.jp (GOTO Kentaro) wrote:

[#8829] Sandbox (again) — wys@... (Clemens Wyss)

Hi,

20 messages 2001/01/08
[#8864] Re: Sandbox (again) — Clemens Hintze <c.hintze@...> 2001/01/08

On 8 Jan, Clemens Wyss wrote:

[#8931] String confusion — Anders Bengtsson <ndrsbngtssn@...>

Hello everyone,

21 messages 2001/01/09
[#8937] Re: String confusion — matz@... (Yukihiro Matsumoto) 2001/01/09

Hi,

[#8953] Please remove account from files — "Thomas Daniels" <westernporter@...>

Please take my e-mail address from your files and "CANCEL" my subscription to "Ruby-Talk". Ruby is not right for what I do. The "Bulk Mail" is overwhelming. Please, no more e-mail! Thank you! yours truly, Stan Daniels

14 messages 2001/01/09
[#8983] Re: Please remove account from files — John Rubinubi <rubinubi@...> 2001/01/10

On Wed, 10 Jan 2001, Thomas Daniels wrote:

[#9020] time to divide -talk? (was: Please remove account from files) — Yasushi Shoji <yashi@...> 2001/01/10

At Wed, 10 Jan 2001 14:23:30 +0900,

[#9047] Re: time to divide -talk? (was: Please remov e account from files) — Aleksi Niemel<aleksi.niemela@...>

Yasushi Shoji:

27 messages 2001/01/10
[#9049] Re: time to divide -talk? — Yasushi Shoji <yashi@...> 2001/01/10

At Thu, 11 Jan 2001 00:20:45 +0900,

[#9153] what about this begin? — Anders Strandl Elkj誡 <ase@...> 2001/01/11

[#9195] Re: Redefining singleton methods — ts <decoux@...>

>>>>> "H" == Horst Duch=EAne?= <iso-8859-1> writes:

10 messages 2001/01/12

[#9242] polymorphism — Maurice Szmurlo <maurice@...>

hello

73 messages 2001/01/13

[#9279] Can ruby replace php? — Jim Freeze <jim@...>

When I read that ruby could be used to replace PHP I got really

15 messages 2001/01/14

[#9411] The Ruby Way — "Conrad Schneiker" <schneiker@...>

As a member of the "Big 8" newsgroups, "The Ruby Way" (of posting) is to

15 messages 2001/01/17

[#9462] Re: reading an entire file as a string — ts <decoux@...>

>>>>> "R" == Raja S <raja@cs.indiana.edu> writes:

35 messages 2001/01/17
[#9465] Re: reading an entire file as a string — Dave Thomas <Dave@...> 2001/01/17

raja@cs.indiana.edu (Raja S.) writes:

[#9521] Larry Wall INterview — ianm74@...

Larry was interviewed at the Perl/Ruby conference in Koyoto:

20 messages 2001/01/18
[#10583] Re: Larry Wall INterview — "greg strockbine" <gstrock@...> 2001/02/08

Larry Wall's interview is how I found out

[#9610] Re: 101 Misconceptions About Dynamic Languages — "Ben Tilly" <ben_tilly@...>

"Christian" <christians@syd.microforte.com.au> wrote:

13 messages 2001/01/20

[#9761] Re: 101 Misconceptions About Dynamic Languages — ts <decoux@...>

>>>>> "C" == Christoph Rippel <crippel@primenet.com> writes:

16 messages 2001/01/23

[#9792] Ruby 162 installer available — Dave Thomas <Dave@...>

15 messages 2001/01/24

[#9958] Re: Vim syntax files again. — "Conrad Schneiker" <schneik@...>

Hugh Sasse wrote:

14 messages 2001/01/26
[#10065] Re: Vim syntax files again. — Hugh Sasse Staff Elec Eng <hgs@...> 2001/01/29

On Sat, 27 Jan 2001, Conrad Schneiker wrote:

[#9975] line continuation — "David Ruby" <ruby_david@...>

can a ruby statement break into multiple lines?

18 messages 2001/01/27
[#9976] Re: line continuation — Michael Neumann <neumann@...> 2001/01/27

On Sat, 27 Jan 2001, David Ruby wrote:

[#9988] Re: line continuation — harryo@... (Harry Ohlsen) 2001/01/28

>A statement break into mutliple lines if it is not complete,

[ruby-talk:9624] Re: 101 Misconceptions About Dynamic Languages

From: "Larry J. Elmore" <ljelmore@...>
Date: 2001-01-21 03:10:02 UTC
List: ruby-talk #9624
In article <001401c082b3$8a39e220$2e03280a@puma>, "Christian"
<christians@syd.microforte.com.au> wrote:

> "Larry J. Elmore" <ljelmore@home.com> wrote:
> 
>> > Christian> But I do know that Mr Stepanov chose to move from Ada95
>> > to C++ to implement his STL. Why?
>>
>> Larry> Actually, he didn't. From an interview in DDJ in March, 1995
>> (http://www.sgi.com/Technology/STL/drdobbs-interview.html):
>>
>> This particular [C++ template] technique became crucial for my work
>> because I discovered that it allowed me to do many things that were
>> not possible in Ada. I view this particular design by Bjarne as a
>> marvelous piece of work and I'm very happy that he didn't follow my
>> advice."
>>
>> Of course, the Ada being referred to here is Ada83. The differences
>> between Ada83 and Ada95 aren't as great as between C and C++, but
>> Ada95 is a considerably nicer language.
> 
> I was thinking of that article when I claimed that Mr Stepanov moved
> from Ada95 to C++. I should have re-read it and referenced it.
> However, the spirit of the claim holds: C++'s templates are more
> suitable to use to implement a STL than Ada95's generics. He even
> claims that C++ allows him to
> "do many things that were not possible in Ada". Of coure, he was
> refering to Ada83, not Ada95, but it is not clear if the situation has
> changed.

It has, so I fail to see how the "spirit of the claim" still holds.

>> Even with a standard and the STL, writing portable C++ seems to be
>> somewhat problematic, as this page relates:
>> http://www.mozilla.org/hacking/portable-cpp.html
> 
> If you want C++ code to work on a wide variety of compilers, with
> radically different language support, of course you will become very
> limited in what features and techniques are available. That is
> obvious, and says nothing about C++ itself. Is it true that if I write
> a bad C++ compiler that does not support virtual functions properly,
> then you must not use virtual functions? Yes, if you want your code to
> work with my compiler.

With validated Ada compilers, that's not a problem. Don't use an
unvalidated compiler. IIRC, _most_ C++ compilers do not _yet_ adhere to
the standard in all particulars. Perhaps that's changed in the last
year?

>> True, but do have a look at
>> http://www.adaic.com/docs/flyers/95cplus.shtml
> 
> The author is very eloquent, and careful, at least at first, to limit
> his language bias (which is wholly acceptable in this context).
> However, the article is dated. It claims that C++ has no standard,
> which was true at the time of writing (1992). Because of this, many of
> his arguments are now false, or at least much weaker. It bemoans the
> lack of features in C++ that were later introduced in the standard:
> "C++ classes are the only encapsulation mechanism in the language".
> Hello, namespaces.

True, but they do look like tacky glued-on additions to an already
complicated beast. I'm not trying to claim that Ada is the be-all and
end-all of languages as you were doing with C++ (and IMHO it would take
more than just an "increment by one" to make C a truly good high-level
language), I'm just pointing out some areas where I do feel Ada is
indeed better. C/C++ has some features I like, but to claim that C++ is
the epitome of programming languages is ridiculous.
 
> That said, some valid points are made convincingly. The fact that
> proficiency in C++ implies proficiency in the environment in which it
> is being used is true. Although it could be claimed that this is both
> obvious and good, the point is taken that it can result in assumptions
> that fail in a different environment. But there are ways and means,
> and POSIX is a good start (most *nix's and Win2k are POSIX compliant,
> although again YMMV). It could be claimed that POSIX is then "a part
> of C++". True enough, from that perspective.
> 
> It is well and good that Bjarne refused the temptation to add threads
> or tasks to C++. These are necessarily application space issues. This
> point could be argued, but it is true that models change from platform
> to platform and even from year to year. How can one buil-in,
> 'standardized' model for threading work in all cases for all purposes
> for all time? The notion of a microthread is different to that of a
> thread. By refusing to lock C++ to any model, Bjarne gave us the
> flexibility to change and adapt. Yes, this means a less strict
> environment. It also means that we can solve problems quickly and
> efficiently, and be adaptable to changes.

I don't understand why you think that's a benefit. IIUC, Ada doesn't
specify the tasking model(s) to be used, it does specify the interface
between units of code. 

>> If it's execution which truly matters, then wouldn't a modern OO
>> assembler be the way to go? :)
> 
> Although you mention it sarcastically, the notion of a modern OO
> assembler is a profound and relevant one.

It wasn't mentioned sarcastically. It was a good question.


>> Larry> Seriously, though, maintenance is an important part of much
>> software engineering.
> 
> Yes, but less so over time. The situation where a company has millions
> of lines of code to maintain over many years is happily going away.

BOGGLE

> Of course, there will be the need for legacy. But as hardware and
> deployment environment evolves ever faster, maintenance can often be a
> poorer choice than a re-write. Yes this is a weak point, but is it not
> true that given that the number of programmers increases non-linearly,
> the amount of software increases non-linearly, thereby reducing the
> importance of 'legacy code'?

BOGGLE

> I do not mean to argue that maintenance is not important because C++
> doesnt support it well (it does).

In comparison to assembler and languages like BLISS, perhaps. But not so
well as other alternatives.

> I argue that, more generally, the sheer amount of new code that will
> be written in the future will make that legacy code far less important
> than it was when there were fewer programmers and a relatively stable
> deployment environment.

That's an interesting viewpoint, to say the least.
 
> Case in point: my profession. I am a game developer. Each new title, I
> re-write the systems from scratch. Very little is used from one game
> to the next. It just isn't meaningful anymore. Yes this is an extreme
> case, but it demonstrates the importance of expressibility and
> practicality over maintainability. I fear that I am in dangerous water
> here and that I am not expressing myself well, so I'll move on :).

I'll tell you one thing -- games are far, far different than the vast
majority of programming that's going on out there. The company I work
for is only 11 years old and still has to support a lot of the original
equipment it first shipped. That means updates to the software so that
it can decode newer telecom protocols. Some of these protocols get
updated almost yearly, if not by the ITU or ANSI, then by the customers
themselves. I would dearly love to rewrite most of our code base (just
decode has well over 2 million _files_, I've no idea what the other
depts have), but business (and the company) is growing fast and it's all
we can do just to keep up. Legacy code is just a fact of life, and it's
no more going away than sewage treatment plants will be.

> How would the use of fibers in Ada95 contend with the built-in task
> model? Oops.

I can't see any problems, but I'm not (yet) a compiler writer, either.
Ada can use threads in Windows quite well, so why not fibres? My main
point is that C++ is not the greatest thing to have ever happened to
computer science. It has some real good points and it has some very bad
ones, too. To get this back to Ruby, I can't imagine using C++ or Ada95
or even Lisp for most of what I now use Ruby for. That'd be like using a
piledriver for crushing tin cans, and driving nails for hanging
pictures. It can be done, but _why_?

Larry

In This Thread