July 23, 2006
Chris Miller wrote:

> On Sat, 22 Jul 2006 03:30:35 -0400, Walter Bright <newshound@digitalmars.com> wrote:
> 
> > I think the title says it all.
> 
> I'm not sure, but I think at least what should be done first is to go through all the specifications and documentation carefully and make sure nothing is missing. All the "to be defined"s and fuzzy areas, and such things should be examined and cleared up. During this, some things may be found needing serious attention that are very much better addressed before 1.0.

Yes, there're many such areas. Better have a checklist.
Is it okay to post 'em to bugzilla?

-- 
AKhropov
July 23, 2006
Andrei Khropov wrote:
> Yes, there're many such areas. Better have a checklist.
> Is it okay to post 'em to bugzilla?

Yes.
July 23, 2006
Paolo Invernizzi wrote:
> Please, another last effort... array initializers.
> 
> My 2c...
> 
> ---
> Paolo
> 
> Walter Bright wrote:
> 
>> I think the title says it all.

I agree.  Although, for the moment, we do have this solution:
# T[] array (T) (T[] args ...) { return args.dup; }
#
# int foo = array!(int)(1, 2, 3);

I'd say this (along with some other things) should get moved into a 'std.array' module at the very least, if we're going 1.0 now.

-- Chris Nicholson-Sauls
July 23, 2006
Reiner Pope wrote:
> Peter C. Chapin wrote:
> 
>> It seems to me that an official 1.0 release will encourage library writers who might be waiting for D to stablize before investing too much time creating libraries for it. Everyone knows that "1.0" means "first cut." I don't think extensive libraries are necessary at this point. Relative stability of language features, however, would be desirable so that extensive libraries could be created without too much reworking later on.
>>
>> Peter
> 
> Not trying to be too argumentative here, but I obviously disagree with what you said, otherwise I wouldn't have said it in the first place. The problem is that the more *big* releases you make, the less interest people take in the language, so it's a good idea too catch their interest from the start. I disagree that "1.0" means first cut, because in many OSS projects (which D effectively is), version numbers don't get

I wonder about that. I'd be willing to bet that the most popular OSS projects were all past 1.0 before they became really popular, especially languages, compilers and/or runtimes. Perl is at 5.6, Python is at 2.5, Ruby is at 1.8 (but that's deceptive), Java is at (effectively) about version 5. D has been at this for about 5-6 years, about the same amount of time for C++ and Java before they became "commercial quality" hits.

GCC wasn't considered stable enough for "real work" until v2.9.x or so, and GCC implemented pre-defined languages, not new ones. I get the feeling that G++ wasn't considered ready for prime time until 3.3.x or so.

> to 2.0 or beyond. IMHO it really means, "we've got a complete product 

IIRC, Walter has recently stated that D is already as stable as many compilers out there. We happen to have a highly visible bug list and regression tests that probably make things look worse than they really are _relative to other compilers_ who don't publish this stuff. In other words by objective measurement we may already have a "complete product" as far as the compilers and language spec. go.

> now, you should have no problems with it." So if someone believes this 

Version 5 of Perl was "the one". Before that (IIRC) there were a lot of quality issues, and after v5 the number and quality of Perl libs. has exploded.

> and then finds that it doesn't come with the built-in libraries they wanted, all of a sudden D is going to use a potential user, because 

I think there have probably been many people who've given D the once over and said "interesting, but v0.1xx - too early" and not taken a second look or tried it. If they had tried it I think they would've probably seen that it was stable enough to contribute a few library functions for. In other words, the libs. aren't going to come until after many people try it, but many people won't try it until after v1.0 because they won't spend the time on something they see as "alpha quality".

> they're not likely to come back and try again later unless they were _extremely_ dedicated.
> 

I think most of us who've tried D would profess that once you try it there are so many advantages to it that it is definitely worth watching. The problem has been that people see "v0.1xx" with a cursory look and decide "it's not even in alpha yet" by virtue of the version number.

A stable language def. labeled v1.x will encourage the library development, IMHO.

Here's how I see things playing out, I could be wrong of course:

a) D at v1.0, people start writing small programs best done in C but done in scripting languages now because of the built-in arrays, etc.
b) As more small programs are developed, they will inspire lib. development and larger programs.
c) D with large, high-quality libs. developed in the crucible of real world usage will take over the world <g>

One of the great things about Java early on was the huge libraries. One of the worst things about the huge libraries was that much of them were buggy and very slow and had to be re-written anyhow. The first Java libs. synchronized everything, so then subsequent releases had to introduce new objects that weren't synchronized and people had to re-write code to take advantage of them and now the non-synchronized versions are probably used more often than the original in many cases. In the meantime Java got the reputation as very slow in large part because of all of the synchronized objects - D can't afford something like that either.

> Cheers,
> 
> Reiner
July 23, 2006
Dave wrote:
> IIRC, Walter has recently stated that D is already as stable as many compilers out there. We happen to have a highly visible bug list and regression tests that probably make things look worse than they really are _relative to other compilers_ who don't publish this stuff. In other words by objective measurement we may already have a "complete product" as far as the compilers and language spec. go.

It isn't unusual for a professional compiler system out there to have thousands of unresolved items in the internal bug database.

The crucial question is if those problems impede the normal use of the product.
July 23, 2006
John Demme wrote:
> Walter Bright wrote:
> 
> 
>>I think the title says it all.
> 
> 
> Has anyone recommended that 0.163 should be labelled RC1?  I think this
> would be fair- hopefully it would focus attention from language changes to
> finding major bugs/flaws and the "Shop's closed- let's clean up and ship
> it" mentality.  It would tell people who are maintaining libraries to
> bother to update them to 0.163 so they will work with 1.0.

This sounds quite reasonable.
July 23, 2006
Walter Bright wrote:
> I think the title says it all.

Sounds good.

How about declaring 0.163 RC1, taking 2 a weeks "no-touching-computers" leave, and trying to get some distance to all this. Go talk with folks, spend time with the kids and wife (if she's still around?), let your sub-conscious mind wind down, perceive the world. (No joke, seriously.)

I think D is as good as we need it to be right now.

When you come back, folks will have made some progress with the libraries, new thoughts on how to tackle the publicity issues, packaging of DMD, and hopefully some really novel ideas, will have emerged.

And there's still time to lay out the groundwork before September. (Early September being the time that defines what folks will be doing for the next 9 months.)

As I see it, there are two areas where D outshines about any other language: the academia (both research and education), and writing mathematical and scientific applications. (Fortan is clunky and passe, C++ can kill a good scientist, Pascal is out-dated, interpreted languages are just too slow, and the Lisp-ish compiled languages are too hard to understand anyway for the casual academic, who is mainly interested in pursuing his own research.)

We might have some ideas for inroads when you come back.
July 23, 2006
"Walter Bright" <newshound@digitalmars.com> wrote in message news:e9sk71$2u86$1@digitaldaemon.com...
>I think the title says it all.

D 0.163 isn't 1.0, but I guess we are getting pretty close to it. Otherwise you wouldn't have started this survey, right?      ;-)



July 23, 2006
Gregor Richards wrote:
> clayasaurus wrote:
>> Dave wrote:
>>
>>> Walter Bright wrote:
>>>
>>>> I think the title says it all.
>>>
>>>
>>> I say it's ready for 1.0.
>>
>>
>> vote++
> 
> In my opinion it's unwise to make a point-oh release of anything immediately after major, sweeping changes.  A few months more time for people to submit major language change ideas before closing it up (which I presume 1.0 would imply) would be a good idea.
> 
>  - Gregor Richards

If we waited a few months after every release, we'd never have D 1.0.

Maybe Walter can label this as D 1.0 Release Candidate 1.

~ Clay
July 24, 2006
John Demme wrote:
> Gregor Richards wrote:
> 
> 
>>clayasaurus wrote:
>>
>>>Dave wrote:
>>>
>>>
>>>>Walter Bright wrote:
>>>>
>>>>
>>>>>I think the title says it all.
>>>>
>>>>
>>>>I say it's ready for 1.0.
>>>
>>>
>>>vote++
>>
>>In my opinion it's unwise to make a point-oh release of anything
>>immediately after major, sweeping changes.  A few months more time for
>>people to submit major language change ideas before closing it up (which
>>I presume 1.0 would imply) would be a good idea.
>>
>>  - Gregor Richards
> 
> 
> A few more month's time for people to recommend changes!?!?  Phfff- we've
> being doing that for years!   IMO, we've got the features we need for D
> 1.0.  A few more bug fixes would be nice (#146) but those can be done after
> 1.0.  More time for the new imports, sure, but no new features!  Let's do
> this already!
> 

It has nothing to do with how long it's been being worked on, it has to do with how stable the codebase is.  Clearly it's still in flux.  In flux is not a good time to release a point-oh.

 - Gregor Richards