digitalmars.D - Who favors the current D1 situation?
- Bill Baxter (35/35) Mar 06 2008 Currently as we all know, D1 gets no new features, and D2 is a crazy
- Jason House (9/54) Mar 06 2008 I'm a D 1.x user who's ready to try D 2.x. My only problem is that I us...
- Bill Baxter (7/13) Mar 06 2008 A) I've got 200,000 lines to port in order to move to D2.x
- Denton Cockburn (7/26) Mar 06 2008 Is there that much required in moving from D1 to D2?
- Jesse Phillips (11/69) Mar 06 2008 I'm with Jason and Gregor on this one. Would it be nice to have these
- Bill Baxter (10/21) Mar 06 2008 Maybe a better analogy is with Python 3K. It's a major release with
- Leandro Lucarella (29/44) Mar 07 2008 Python has a well mature and proved development model. It has major
- Walter Bright (3/7) Mar 06 2008 I also can see problems with having to support even more versions of D
- Gregor Richards (7/52) Mar 06 2008 Having an unstable base (and I don't mean unstable in the software
- Bill Baxter (17/71) Mar 06 2008 People reimplementing D come in two categories:
- Gregor Richards (10/86) Mar 07 2008 We're not talking about bug fixes, we're talking about new features. If
- Derek Parnell (16/18) Mar 06 2008 I'm probably going against the trend here, but I do not code for D1 any
- Bill Baxter (19/34) Mar 06 2008 Probably I should do what you've done and take an honest stab at porting...
- Ryan Bloomfield (6/8) Mar 06 2008 I'm a newbie here, so take my opinion with a truckload of salt.
- Bill Baxter (8/19) Mar 06 2008 That would satisfy me at least, but it almost doubles the number of
- Lionello Lunesu (2/16) Mar 06 2008 You mean a D2 without const?
- Bill Baxter (13/29) Mar 06 2008 :-)
- Jarrett Billingsley (17/49) Mar 06 2008 I'd like a lot of the new D2 features (__traits, a lot of the new
- Kris (23/34) Mar 06 2008 As one of the early proponents of const (actually, a subset of const), I...
- Derek Parnell (16/17) Mar 06 2008 It took me a while to port Bud over to D2, but that was due mostly to th...
- Walter Bright (8/25) Mar 06 2008 That's right, although there have been bugs in the implementation (many
- Kris (26/36) Mar 07 2008 It is simpler and generally more effective to design an API which avoids...
- Walter Bright (14/31) Mar 07 2008 But you shouldn't *need* to be doing .dup for invariant arrays. If you
- Bill Baxter (10/16) Mar 07 2008 Yes, they believe they need it. Sure. But I doubt many of them have
- Walter Bright (3/22) Mar 07 2008 C++ const is not too useful anyway, as it is not transitive and not
- Sean Kelly (13/21) Mar 07 2008 I can't speak for anyone else, but my issue with C++ const had nothing t...
- Walter Bright (3/8) Mar 07 2008 The adaptable return types issue has not been properly addressed yet. It...
- Kris (34/65) Mar 07 2008 Indeed. This is the very argument used to refute your earlier claims abo...
- Janice Caron (5/6) Mar 07 2008 I have no idea how many people have adopted D1
- Bill Baxter (7/15) Mar 07 2008 There was a poll not so long ago. Maybe you missed it.
- Janice Caron (4/10) Mar 07 2008 And (proportionately) more D1 users than I was expecting. Hey ho.
- Bill Baxter (19/34) Mar 07 2008 Some people responded directly to the NG. I'll repaste the summary here...
- Janice Caron (2/3) Mar 07 2008 It's not in my nature to form opinions in the absence of data.
- Bill Baxter (6/10) Mar 07 2008 Fair enough. But there is various data. Number of websites about D,
- Saaa (9/12) Mar 07 2008 Absence of data?
- Kris (3/7) Mar 07 2008 That is the funniest, and perhaps most deliberately misleading post ever...
- Jarrett Billingsley (2/9) Mar 07 2008 Now, now!
- Kris (5/17) Mar 07 2008 Seriously Jarrett ... I'll be happy to dig up prior posts to illustrate ...
- Jarrett Billingsley (3/5) Mar 08 2008 I'm not saying that I necessarily disagree ;) But it's just certain thi...
- Janice Caron (24/25) Mar 08 2008 I'm not quite sure where you're going with this, but "Tango is written
- Kris (25/26) Mar 08 2008 There needs to be a foil for your BS, Janice, since some newer people ma...
- Janice Caron (5/13) Mar 08 2008 I did, albeit six months ago. More to the point, I did /not/ say, and
- Kris (13/26) Mar 08 2008 BS is BS. Period. Also, you cutely cut out the appropriate part, Janice....
- Janice Caron (19/35) Mar 09 2008 You misunderstand the source of my objection.
- Robert Fraser (2/5) Mar 09 2008 It's a deficiency of the communication medium.
- Kris (36/54) Mar 09 2008 Ah, some more BS there -- while you call for moderated forums, and claim...
- lurker (5/81) Mar 09 2008 watching for quite a while.
- Kris (11/16) Mar 09 2008 Your English is perfectly fine ... don't worry about it.
- downs (10/33) Mar 10 2008 I see his point and agree.
- Bill Baxter (8/10) Mar 09 2008 Hey you two! Get off my thread!
- Kris (4/14) Mar 09 2008 Yeah, my apologies for the OT. Seems like there's some kind of sock-pupp...
- Janice Caron (8/10) Mar 10 2008 I surrender, OK? Just write the confession and I'll sign it.
- Steven Schveighoffer (5/15) Mar 10 2008 Kids, if you don't stop arguing back there, I'm going to pull this NG ov...
- lurker (4/17) Mar 10 2008 1. andre
- lurker (13/39) Mar 10 2008 i don't know who wrote this, but it was not me. i wrote yesterday and re...
- Kris (6/7) Mar 12 2008 The damage done by trolls, puppeteers, fud-mongers and their ilk is at t...
- a (3/10) Mar 13 2008 yeah i am the guy who was stealing your sandwiches in kindergarten.
- Kris (81/85) Mar 12 2008 I'd intended to forego further posts on this topic, but you are asking f...
- Ty Tower (3/9) Mar 13 2008 Err Death threats? I said" if I had my way I would shoot you". Bit of d...
- Janice Caron (78/107) Mar 20 2008 OK, well ignoring for the moment the fact that no insult was
- BCS (8/13) Mar 06 2008 I'd be open to some changes
- Darryl Bleau (12/31) Mar 07 2008 To pipe in, I am a commercial developer using D1, (project size ~100k)
- Saaa (6/6) Mar 06 2008 Same here.
- Alexander Panek (17/22) Mar 06 2008 I appreciate the fact that D1 is stable. But it seems a bit too "stable"...
- bearophile (5/8) Mar 07 2008 You have to be really careful about adding features supported by such "e...
- Walter Bright (7/27) Mar 07 2008 I agree that one has to be careful about what evidence one pays
- Derek Parnell (7/8) Mar 07 2008 I work with the banking industry and COBOL holds its head up high in tha...
- Bill Baxter (3/11) Mar 07 2008 And has it const?
- Derek Parnell (6/12) Mar 07 2008 ROFLMAO
- Bill Baxter (15/25) Mar 07 2008 No I take it?
- Christopher Wright (4/9) Mar 07 2008 const: compile-time constant.
- Christopher Wright (2/2) Mar 07 2008 And I just checked -- neither const nor readonly are valid outside
- =?ISO-8859-1?Q?Julio_C=E9sar_Carrascal_Urquijo?= (11/16) Mar 07 2008 The "const" keyword is only for value types. The "readonly" keyword can
- Ameer Armaly (7/42) Mar 07 2008 IMO it's not so much a case of wanting D1 to be frozen but wanting D1 to...
- Edward Diener (15/56) Mar 07 2008 I disagree that new features in D2 should be backported.
- Saaa (8/22) Mar 07 2008 If all the changes are non breaking ones and if it doesn't take any
- Aarti_pl (24/34) Mar 07 2008 I see two important problems with backporting new features from D 2.0
- Saaa (13/48) Mar 07 2008 A few new bugs would not bug me that much, as long as the older code won...
- Brian Hay (6/18) Mar 07 2008 D2 is unstable, therefore by definition ANY new feature added to it is
- Bill Baxter (7/26) Mar 07 2008 By that definition D2 will never be stable because it has D2 features
- Russell Lewis (5/7) Mar 07 2008 I'm not opposed to having D1 get back-ported features (provided, of
- Sean Kelly (6/10) Mar 07 2008 I think there is some use in having a D1 release in terms of having a pr...
- Bill Baxter (6/19) Mar 07 2008 There is code for D2 checked into the GDC repo.
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (16/23) Mar 07 2008 To use the D1 version of GDC, one configures it with:
- Walter Bright (2/4) Mar 07 2008 What exactly is barring you?
- Saaa (2/6) Mar 07 2008 Good question, because people (who I think know more about D than me) sa...
- Sean Kelly (6/10) Mar 07 2008 The busywork required to adapt Tango to work with D2. That being mostly...
- Walter Bright (3/13) Mar 07 2008 Fair enough. I haven't myself gotten const put everywhere it should be
- Derek Parnell (7/9) Mar 07 2008 I can confirm that! I have these little workarounds in my code to cope w...
- Kris (2/16) Mar 07 2008 The semantics of const are quite different between D1 and D2
- Jason House (5/20) Mar 07 2008 Is that all? If you give me access I'll guarantee at least 10 hours of ...
- Steven Schveighoffer (24/28) Mar 10 2008 I helped to do an exploratory 'port' of Tango to D2 (version 2.007 I
- Clay Smith (3/48) Mar 07 2008 I want D1 to be frozen, yes.
Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment. Now I know a lot of people were asking for D to become more stable pre D1 days, but is this really what you wanted? I had initially assumed that the freeze on D1 was at least as much due to time constraints on Walter as it was due to a desire for stability. But in a recent message Walter said that wasn't the case. He said that backporting things from D2 to D1 was pretty trivial. So really then, it to comes down to Walter believing that the D community wants D1 to be feature frozen. Is it really true? Is there a group of folks who really want D1 to be frozen? I myself would like to see D1 get all new features that won't break existing source code. Things like: * New string literals - q{a=b} D-token string syntax, - delimited strings, q"(...)" - heredocs, q"EOF... * IFTI that works even if you specify one parameter, * Enhanced is expression - is ( Type Identifier : TypeSpecialization , TemplateParameterList ) - is ( Type Identifier == TypeSpecialization , TemplateParameterList ) * foreach(i; 0..10) syntax (ForeachRangeLiteral) * Overload sets I'm all with the sentiment that D1 code that compiles today should compile tomorrow. That kind of stability is great. But if it's not a big time commitment for Walter (which he says it's not), I see no good reason to keep new backwards-compatible features out of D1. I've heard other folks saying they want this from D1 too, but what I haven't heard is a great swell of active D developers saying that new features would be a detriment to their work. --bb, (who has now written and/or ported about 200,000 lines of D according to a quick check with 'wc')
Mar 06 2008
Bill Baxter wrote:Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment. Now I know a lot of people were asking for D to become more stable pre D1 days, but is this really what you wanted? I had initially assumed that the freeze on D1 was at least as much due to time constraints on Walter as it was due to a desire for stability. But in a recent message Walter said that wasn't the case. He said that backporting things from D2 to D1 was pretty trivial. So really then, it to comes down to Walter believing that the D community wants D1 to be feature frozen. Is it really true? Is there a group of folks who really want D1 to be frozen? I myself would like to see D1 get all new features that won't break existing source code. Things like: * New string literals - q{a=b} D-token string syntax, - delimited strings, q"(...)" - heredocs, q"EOF... * IFTI that works even if you specify one parameter, * Enhanced is expression - is ( Type Identifier : TypeSpecialization , TemplateParameterList ) - is ( Type Identifier == TypeSpecialization , TemplateParameterList ) * foreach(i; 0..10) syntax (ForeachRangeLiteral) * Overload sets I'm all with the sentiment that D1 code that compiles today should compile tomorrow. That kind of stability is great. But if it's not a big time commitment for Walter (which he says it's not), I see no good reason to keep new backwards-compatible features out of D1. I've heard other folks saying they want this from D1 too, but what I haven't heard is a great swell of active D developers saying that new features would be a detriment to their work. --bb, (who has now written and/or ported about 200,000 lines of D according to a quick check with 'wc')I'm a D 1.x user who's ready to try D 2.x. My only problem is that I use Tango, so I wait patiently. I'm ok with D 1.x being very stable and only including fixes of obvious bugs. Should there be something between a very stable 1.0xxx and 2.x? Maybe. I guess the question is how much stability is desired? Why not move to 2.x now that const is stable? --jason (who has now written and/or ported about 9,000 lines of D according to a quick check with 'wc')
Mar 06 2008
Jason House wrote:Bill Baxter wrote:I'm a D 1.x user who's ready to try D 2.x. My only problem is that I use Tango, so I wait patiently. I'm ok with D 1.x being very stable and only including fixes of obvious bugs. Should there be something between a very stable 1.0xxx and 2.x? Maybe. I guess the question is how much stability is desired? Why not move to 2.x now that const is stable?A) I've got 200,000 lines to port in order to move to D2.x B) I'm pretty unenthusiastic about const now. C) I want _some_ stability. Breaking changes can be introduced into 2.x at any time. And I think it's best that way. Walter should feel completely free to break anything he sees fit to break in the D2 tree. --bb
Mar 06 2008
On Fri, 07 Mar 2008 11:51:48 +0900, Bill Baxter wrote:Jason House wrote:Is there that much required in moving from D1 to D2? IMO, The biggest thing (and forced) is strings. Most of the other things are optional (I guess that will change later when const pervades the library) - diboss (whose ~7000 lines of D code is feeling mighty inadequate to Bill's 200K)Bill Baxter wrote:I'm a D 1.x user who's ready to try D 2.x. My only problem is that I use Tango, so I wait patiently. I'm ok with D 1.x being very stable and only including fixes of obvious bugs. Should there be something between a very stable 1.0xxx and 2.x? Maybe. I guess the question is how much stability is desired? Why not move to 2.x now that const is stable?A) I've got 200,000 lines to port in order to move to D2.x B) I'm pretty unenthusiastic about const now. C) I want _some_ stability. Breaking changes can be introduced into 2.x at any time. And I think it's best that way. Walter should feel completely free to break anything he sees fit to break in the D2 tree. --bb
Mar 06 2008
On Thu, 06 Mar 2008 21:43:51 -0500, Jason House wrote:Bill Baxter wrote:I'm with Jason and Gregor on this one. Would it be nice to have these changes, yes, but I don't think that is the way to look at it. Even if D3 is completely compatibly with all D2 code, I wouldn't want it be in the D2 tree. Think about it, you don't get all the Java 7 stuff in Java 6, just because you don't see it to want it. D2 is going to introduce a lot of breaking in old code, and headaches with const that many don't want. And I believe this is really where you're coming from? You like the lack of const, but want the other stuff? (not saying there is anything wrong with it. I'm kinda frightened to switch, eager, but frightened)Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment. Now I know a lot of people were asking for D to become more stable pre D1 days, but is this really what you wanted? I had initially assumed that the freeze on D1 was at least as much due to time constraints on Walter as it was due to a desire for stability. But in a recent message Walter said that wasn't the case. He said that backporting things from D2 to D1 was pretty trivial. So really then, it to comes down to Walter believing that the D community wants D1 to be feature frozen. Is it really true? Is there a group of folks who really want D1 to be frozen? I myself would like to see D1 get all new features that won't break existing source code. Things like: * New string literals - q{a=b} D-token string syntax, - delimited strings, q"(...)" - heredocs, q"EOF... * IFTI that works even if you specify one parameter, * Enhanced is expression - is ( Type Identifier : TypeSpecialization , TemplateParameterList ) - is ( Type Identifier == TypeSpecialization , TemplateParameterList ) * foreach(i; 0..10) syntax (ForeachRangeLiteral) * Overload sets I'm all with the sentiment that D1 code that compiles today should compile tomorrow. That kind of stability is great. But if it's not a big time commitment for Walter (which he says it's not), I see no good reason to keep new backwards-compatible features out of D1. I've heard other folks saying they want this from D1 too, but what I haven't heard is a great swell of active D developers saying that new features would be a detriment to their work. --bb, (who has now written and/or ported about 200,000 lines of D according to a quick check with 'wc')I'm a D 1.x user who's ready to try D 2.x. My only problem is that I use Tango, so I wait patiently. I'm ok with D 1.x being very stable and only including fixes of obvious bugs. Should there be something between a very stable 1.0xxx and 2.x? Maybe. I guess the question is how much stability is desired? Why not move to 2.x now that const is stable? --jason (who has now written and/or ported about 9,000 lines of D according to a quick check with 'wc')
Mar 06 2008
Jesse Phillips wrote:I'm with Jason and Gregor on this one. Would it be nice to have these changes, yes, but I don't think that is the way to look at it. Even if D3 is completely compatibly with all D2 code, I wouldn't want it be in the D2 tree. Think about it, you don't get all the Java 7 stuff in Java 6, just because you don't see it to want it. D2 is going to introduce a lot of breaking in old code, and headaches with const that many don't want. And I believe this is really where you're coming from? You like the lack of const, but want the other stuff? (not saying there is anything wrong with it. I'm kinda frightened to switch, eager, but frightened)Maybe a better analogy is with Python 3K. It's a major release with some new breaking additions, and I seem to recall they're planning on having Python 2.x releases that incorporate backported features from Python 3K. Probably someone here is more up to date on that situation than me. Anyway I think an analogy with Java -- backed by a behemoth company, now on the 7th major release, with millions of users -- is not really apt. D can be and is more agile than that. --bb
Mar 06 2008
Bill Baxter, el 7 de marzo a las 14:29 me escribiste:Jesse Phillips wrote:Python has a well mature and proved development model. It has major versions, where huge (a la D2.0) changes are possible, minor versions, where new non-breaking (or small breaking changes[*]) are included (what is lacking in D), and patchlevel version, where only bugfixes are included (D1). [*] This breaking changes are done in a progressive way, and it (usually) takes 3 minor Python versions to complete the changes: * First, the change is included *optionally*, the user can test it using import __future__[1] (this could be a compiler flag for D). * In the next minor version, the new feature is included by default, and if appropriate, "old" stuff is marked deprecated (issue a deprecation warning when used). * In the next minor version, the deprecated features are removed. I think this gives to the language a great compromise between evolution and stability. Of course there are several development releases for new minor versions, they are not tagged as "stable" as soon as they get the new features, so people can test it until they are considered stable. I think D could implement this model without problems, and I don't see any problems in the Python world with this, old minor version are not maintained then they get old, so is not that much work. [1] http://www.python.org/dev/peps/pep-0236/ -- Leandro Lucarella (luca) | Blog colectivo: http://www.mazziblog.com.ar/blog/ ---------------------------------------------------------------------------- GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145 104C 949E BFB6 5F5A 8D05) ---------------------------------------------------------------------------- In 1995 a Japanese trawler sank, because a Russian cargo plane dropped a living cow from 30,000 feetI'm with Jason and Gregor on this one. Would it be nice to have these changes, yes, but I don't think that is the way to look at it. Even if D3 is completely compatibly with all D2 code, I wouldn't want it be in the D2 tree. Think about it, you don't get all the Java 7 stuff in Java 6, just because you don't see it to want it. D2 is going to introduce a lot of breaking in old code, and headaches with const that many don't want. And I believe this is really where you're coming from? You like the lack of const, but want the other stuff? (not saying there is anything wrong with it. I'm kinda frightened to switch, eager, but frightened)Maybe a better analogy is with Python 3K. It's a major release with some new breaking additions, and I seem to recall they're planning on having Python 2.x releases that incorporate backported features from Python 3K. Probably someone here is more up to date on that situation than me.
Mar 07 2008
Jesse Phillips wrote:I'm with Jason and Gregor on this one. Would it be nice to have these changes, yes, but I don't think that is the way to look at it. Even if D3 is completely compatibly with all D2 code, I wouldn't want it be in the D2 tree.I also can see problems with having to support even more versions of D if D 1.0 gets semantic changes.
Mar 06 2008
Bill Baxter wrote:Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment. Now I know a lot of people were asking for D to become more stable pre D1 days, but is this really what you wanted? I had initially assumed that the freeze on D1 was at least as much due to time constraints on Walter as it was due to a desire for stability. But in a recent message Walter said that wasn't the case. He said that backporting things from D2 to D1 was pretty trivial. So really then, it to comes down to Walter believing that the D community wants D1 to be feature frozen. Is it really true? Is there a group of folks who really want D1 to be frozen? I myself would like to see D1 get all new features that won't break existing source code. Things like: * New string literals - q{a=b} D-token string syntax, - delimited strings, q"(...)" - heredocs, q"EOF... * IFTI that works even if you specify one parameter, * Enhanced is expression - is ( Type Identifier : TypeSpecialization , TemplateParameterList ) - is ( Type Identifier == TypeSpecialization , TemplateParameterList ) * foreach(i; 0..10) syntax (ForeachRangeLiteral) * Overload sets I'm all with the sentiment that D1 code that compiles today should compile tomorrow. That kind of stability is great. But if it's not a big time commitment for Walter (which he says it's not), I see no good reason to keep new backwards-compatible features out of D1. I've heard other folks saying they want this from D1 too, but what I haven't heard is a great swell of active D developers saying that new features would be a detriment to their work. --bb, (who has now written and/or ported about 200,000 lines of D according to a quick check with 'wc')Having an unstable base (and I don't mean unstable in the software sense) makes reimplementations (including partial reimplementations e.g. GDC), ports, etc very difficult. With a feature freeze on 1.0, there is a solid, specified language that one can target without having to keep up with a changing specification. - Gregor Richards
Mar 06 2008
Gregor Richards wrote:Bill Baxter wrote:People reimplementing D come in two categories: 1) from scratch, These people can just stick with whatever fixed 1.x version of the specification they want. Any bug fixes that Walter makes to the 1.x series wouldn't help them anyway. 2) dmdfe based, These people already have to merge with latest dmdfe changes to get the bug fixes, so their lives won't become any more difficult. Still just a merge from upstream. Also, given the fact that there really aren't any viable examples of 1) right now that even implement the 1.0 spec, I'm not sure this is a very important category to base decisions upon. There are many more actual users of D 1.x than there are people implementing D from scratch and there are basically zero users of clean-room implementations of the D 1.x spec. --bbCurrently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment. Now I know a lot of people were asking for D to become more stable pre D1 days, but is this really what you wanted? I had initially assumed that the freeze on D1 was at least as much due to time constraints on Walter as it was due to a desire for stability. But in a recent message Walter said that wasn't the case. He said that backporting things from D2 to D1 was pretty trivial. So really then, it to comes down to Walter believing that the D community wants D1 to be feature frozen. Is it really true? Is there a group of folks who really want D1 to be frozen? I myself would like to see D1 get all new features that won't break existing source code. Things like: * New string literals - q{a=b} D-token string syntax, - delimited strings, q"(...)" - heredocs, q"EOF... * IFTI that works even if you specify one parameter, * Enhanced is expression - is ( Type Identifier : TypeSpecialization , TemplateParameterList ) - is ( Type Identifier == TypeSpecialization , TemplateParameterList ) * foreach(i; 0..10) syntax (ForeachRangeLiteral) * Overload sets I'm all with the sentiment that D1 code that compiles today should compile tomorrow. That kind of stability is great. But if it's not a big time commitment for Walter (which he says it's not), I see no good reason to keep new backwards-compatible features out of D1. I've heard other folks saying they want this from D1 too, but what I haven't heard is a great swell of active D developers saying that new features would be a detriment to their work. --bb, (who has now written and/or ported about 200,000 lines of D according to a quick check with 'wc')Having an unstable base (and I don't mean unstable in the software sense) makes reimplementations (including partial reimplementations e.g. GDC), ports, etc very difficult. With a feature freeze on 1.0, there is a solid, specified language that one can target without having to keep up with a changing specification. - Gregor Richards
Mar 06 2008
Bill Baxter wrote:Gregor Richards wrote:We're not talking about bug fixes, we're talking about new features. If new features creep into D 1.0, then new code won't work on their compilers, and then we get "for D 1.0 (oh but only DMD, not fooDC)" messages.Bill Baxter wrote:People reimplementing D come in two categories: 1) from scratch, These people can just stick with whatever fixed 1.x version of the specification they want. Any bug fixes that Walter makes to the 1.x series wouldn't help them anyway.Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment. Now I know a lot of people were asking for D to become more stable pre D1 days, but is this really what you wanted? I had initially assumed that the freeze on D1 was at least as much due to time constraints on Walter as it was due to a desire for stability. But in a recent message Walter said that wasn't the case. He said that backporting things from D2 to D1 was pretty trivial. So really then, it to comes down to Walter believing that the D community wants D1 to be feature frozen. Is it really true? Is there a group of folks who really want D1 to be frozen? I myself would like to see D1 get all new features that won't break existing source code. Things like: * New string literals - q{a=b} D-token string syntax, - delimited strings, q"(...)" - heredocs, q"EOF... * IFTI that works even if you specify one parameter, * Enhanced is expression - is ( Type Identifier : TypeSpecialization , TemplateParameterList ) - is ( Type Identifier == TypeSpecialization , TemplateParameterList ) * foreach(i; 0..10) syntax (ForeachRangeLiteral) * Overload sets I'm all with the sentiment that D1 code that compiles today should compile tomorrow. That kind of stability is great. But if it's not a big time commitment for Walter (which he says it's not), I see no good reason to keep new backwards-compatible features out of D1. I've heard other folks saying they want this from D1 too, but what I haven't heard is a great swell of active D developers saying that new features would be a detriment to their work. --bb, (who has now written and/or ported about 200,000 lines of D according to a quick check with 'wc')Having an unstable base (and I don't mean unstable in the software sense) makes reimplementations (including partial reimplementations e.g. GDC), ports, etc very difficult. With a feature freeze on 1.0, there is a solid, specified language that one can target without having to keep up with a changing specification. - Gregor Richards2) dmdfe based, These people already have to merge with latest dmdfe changes to get the bug fixes, so their lives won't become any more difficult. Still just a merge from upstream. Also, given the fact that there really aren't any viable examples of 1) right now that even implement the 1.0 spec, I'm not sure this is a very important category to base decisions upon.There aren't any != there never will be any. Making D1 a moving target just discourages such development.There are many more actual users of D 1.x than there are people implementing D from scratchUm ... duh?and there are basically zero users of clean-room implementations of the D 1.x spec.And it's a good thing that situations never ever change over time.--bb- Gregor Richards
Mar 07 2008
On Fri, 07 Mar 2008 11:20:38 +0900, Bill Baxter wrote:Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment.I'm probably going against the trend here, but I do not code for D1 any more. My method of working is that I code for D2, then when that is working, I make it work with D1. Sure, it might mean recoding some slabs of code totally differently, but I'm not going to loose sleep if I'm not 100% D1 compatible, as that version WILL definitely be phased out before D2 will. D2 is fairly stable now in terms of syntax changes even though it has a number of bugs still remaining. But this is not mission-critical stuff I'm relying on right now. I don't think I'd write serious commercial software in D yet, of any flavour. -- Derek (skype: derek.j.parnell) Melbourne, Australia 7/03/2008 3:38:52 PM
Mar 06 2008
Derek Parnell wrote:On Fri, 07 Mar 2008 11:20:38 +0900, Bill Baxter wrote:Probably I should do what you've done and take an honest stab at porting my code to D2 to see how bad it really is. But if I make the transition, I'm just going to turn my back on D1 completely. There's no way I'm going to try to maintain compatibility. What I know about D2 code comes mostly from porting Phobos2 to Phobos1, and frankly the need for bizarre constructs like "assumeUnique" just doesn't sit well with me. Additionally, after ripping a lot of redundant const iterators out of various C++ ports, I really don't feel like putting them back. The code is a lot clearer and much less redundant without them. But I feel the code will now be incomplete without them in D2.Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment.I'm probably going against the trend here, but I do not code for D1 any more. My method of working is that I code for D2, then when that is working, I make it work with D1. Sure, it might mean recoding some slabs of code totally differently, but I'm not going to loose sleep if I'm not 100% D1 compatible, as that version WILL definitely be phased out before D2 will.D2 is fairly stable now in terms of syntax changes even though it has a number of bugs still remaining. But this is not mission-critical stuff I'm relying on right now. I don't think I'd write serious commercial software in D yet, of any flavour.At least I know the placement of "const" for methods seems to still be somewhat up in the air. Does it go before/after/either? Or maybe const(this) anyone? Updating my code for that one change could be a pretty big headache if I choose the flavor that gets deprecated. More than that, I *want* Walter to feel like he can break things big time in D2. It's a great opportunity to improve the basics of the language. --bb
Mar 06 2008
Bill Baxter Wrote:I myself would like to see D1 get all new features that won't break existing source code.I'm a newbie here, so take my opinion with a truckload of salt. Why not make a "backports" version? Make a D1.5 branch that will patch the stable D1 with non-breaking D2 features, which are already pretty stable. That way the frozen D1 can stay as stable as possible and encourage more serious use, and the D1.5(or whatever) can be used by the more adventurous of us. The only downside I see is keeping it in sync with D1 bug fixes. Ryan
Mar 06 2008
Ryan Bloomfield wrote:Bill Baxter Wrote:That would satisfy me at least, but it almost doubles the number of versions of D someone might be using with DMD vs GDC, Phobos vs Tango, D1 vs D1.5 vs D2. I think maintaining a whole separate version likely would be a burden for Walter. There'd need to be another bifurcation of the web pages for instance. --bbI myself would like to see D1 get all new features that won't break existing source code.I'm a newbie here, so take my opinion with a truckload of salt. Why not make a "backports" version? Make a D1.5 branch that will patch the stable D1 with non-breaking D2 features, which are already pretty stable. That way the frozen D1 can stay as stable as possible and encourage more serious use, and the D1.5(or whatever) can be used by the more adventurous of us. The only downside I see is keeping it in sync with D1 bug fixes.
Mar 06 2008
I myself would like to see D1 get all new features that won't break existing source code. Things like: * New string literals - q{a=b} D-token string syntax, - delimited strings, q"(...)" - heredocs, q"EOF... * IFTI that works even if you specify one parameter, * Enhanced is expression - is ( Type Identifier : TypeSpecialization , TemplateParameterList ) - is ( Type Identifier == TypeSpecialization , TemplateParameterList ) * foreach(i; 0..10) syntax (ForeachRangeLiteral) * Overload setsYou mean a D2 without const? L.
Mar 06 2008
Lionello Lunesu wrote::-) Without breaking changes. For the most part that appears to be const/invariant/enum right now, yes. I also didn't mention closures because I think maybe they are likely to cause existing D1 programs to behave differently. I also didn't mention __traits because it seems still in incubation. That's what D2 is perfect for. Putting features in incubation till they prove stable. So yeh let me state that I don't think changes to D2 should be backported instantly. They should get tried out in D2 and survive a few releases before showing up in D1. --bbI myself would like to see D1 get all new features that won't break existing source code. Things like: * New string literals - q{a=b} D-token string syntax, - delimited strings, q"(...)" - heredocs, q"EOF... * IFTI that works even if you specify one parameter, * Enhanced is expression - is ( Type Identifier : TypeSpecialization , TemplateParameterList ) - is ( Type Identifier == TypeSpecialization , TemplateParameterList ) * foreach(i; 0..10) syntax (ForeachRangeLiteral) * Overload setsYou mean a D2 without const?
Mar 06 2008
"Bill Baxter" <dnewsgroup billbaxter.com> wrote in message news:fqq8ps$g0r$1 digitalmars.com...Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment. Now I know a lot of people were asking for D to become more stable pre D1 days, but is this really what you wanted? I had initially assumed that the freeze on D1 was at least as much due to time constraints on Walter as it was due to a desire for stability. But in a recent message Walter said that wasn't the case. He said that backporting things from D2 to D1 was pretty trivial. So really then, it to comes down to Walter believing that the D community wants D1 to be feature frozen. Is it really true? Is there a group of folks who really want D1 to be frozen? I myself would like to see D1 get all new features that won't break existing source code. Things like: * New string literals - q{a=b} D-token string syntax, - delimited strings, q"(...)" - heredocs, q"EOF... * IFTI that works even if you specify one parameter, * Enhanced is expression - is ( Type Identifier : TypeSpecialization , TemplateParameterList ) - is ( Type Identifier == TypeSpecialization , TemplateParameterList ) * foreach(i; 0..10) syntax (ForeachRangeLiteral) * Overload sets I'm all with the sentiment that D1 code that compiles today should compile tomorrow. That kind of stability is great. But if it's not a big time commitment for Walter (which he says it's not), I see no good reason to keep new backwards-compatible features out of D1. I've heard other folks saying they want this from D1 too, but what I haven't heard is a great swell of active D developers saying that new features would be a detriment to their work.I'd like a lot of the new D2 features (__traits, a lot of the new compile-time stuff like template enhancements, foreach(i; 0 .. 10)) but at the same time I don't feel like DMDFE is mature enough to offer me a stable, bug-free implementation of many of these features. Furthermore I'm not entirely sold on const and until that _actually_ gets sorted I'd like to stay away from D2. God only knows how long _that_ will take. A D1 + extras version of the compiler would be nice but that seems like a special provision that would only make it harder for compiler implementors and library users to conform to. I'll be contributing to Dil as much as I can over the rest of the semester and the summer break, undoubtedly also contributing to the D2 side of development, but I can't promise that I'll be switching to D2 any time soon. Before D1 came out, I really didn't have a choice as to which version of D to use, but now that D1 has been partially (mostly) stabilized, I'd rather stick to it than to the ever-changing D2.
Mar 06 2008
"Jarrett Billingsley" <kb3ctd2 yahoo.com> wrote [snip]Furthermore I'm not entirely sold on const and until that _actually_ gets sorted I'd like to stay away from D2. God only knows how long _that_ will take. A D1 + extras version of the compiler would be nice but that seems like a special provision that would only make it harder for compiler implementors and library users to conform to. I'll be contributing to Dil as much as I can over the rest of the semester and the summer break, undoubtedly also contributing to the D2 side of development, but I can't promise that I'll be switching to D2 any time soon. Before D1 came out, I really didn't have a choice as to which version of D to use, but now that D1 has been partially (mostly) stabilized, I'd rather stick to it than to the ever-changing D2.As one of the early proponents of const (actually, a subset of const), I have to admit to being disappointed with the current D2 mechanisms. Have avoided commentry in the past, because D2 has been positioned as merely experimental. However, from what I understand, Walter is feeling like the const design is almost baked. My original beef was not being able to protect a return value (such as a char[]) from being abused without having to copy the returned content instead of returning a slice. At the time, the 'in' modifier provided suitable intent and control for read-only parameters, so the /hope/ was for something reasonbly simple (to the user) in order to handle the return-value aspect. While I understand how things can sometimes quickly become complex while trying to support a simple notion, there's nothing trivial at all about using or comprehending the D2 const mechanisms. A claim has been made that one does not have to use or be aware of const or invariant to use D2 ... unfortunately that does not appear to be the case in practice, and the added complexity makes D2 harder to work with than D1. At least for now, D1 is the language of choice for me. New features are nice enough, but they're not nearly sufficient to outweight the current const/invariant difficulties. 2c
Mar 06 2008
On Thu, 6 Mar 2008 22:35:24 -0800, Kris wrote:the added complexity makes D2 harder to work with than D1.It took me a while to port Bud over to D2, but that was due mostly to the changing 'char[]' to 'string' and the many .dup calls that were used to protect returned slices. Once I removed all of those, I then had to add back in a handful of .idup calls but now the code is a lot cleaner and little faster. Just for fun, I spent a couple of hours last night writing a turn-based strategy game, a bit similar to Microsoft's Age of Empires concept, to get some practice in using OO techniques. D2 made things so easy and clean looking. I'm sure D1 would also be nice, but I've nothing (yet) to say against D2's way of seeing the world. -- Derek (skype: derek.j.parnell) Melbourne, Australia 7/03/2008 6:14:25 PM
Mar 06 2008
Kris wrote:As one of the early proponents of const (actually, a subset of const), I have to admit to being disappointed with the current D2 mechanisms. Have avoided commentry in the past, because D2 has been positioned as merely experimental. However, from what I understand, Walter is feeling like the const design is almost baked.That's right, although there have been bugs in the implementation (many were fixed in the 2.012 update).My original beef was not being able to protect a return value (such as a char[]) from being abused without having to copy the returned content instead of returning a slice. At the time, the 'in' modifier provided suitable intent and control for read-only parameters, so the /hope/ was for something reasonbly simple (to the user) in order to handle the return-value aspect.If you ever find yourself needing to dup an invariant array, there's a bug somewhere else in the code.While I understand how things can sometimes quickly become complex while trying to support a simple notion, there's nothing trivial at all about using or comprehending the D2 const mechanisms. A claim has been made that one does not have to use or be aware of const or invariant to use D2 ... unfortunately that does not appear to be the case in practice, and the added complexity makes D2 harder to work with than D1.In some ways it is more complex, but in other ways it is simpler. Not the language, but the way it is used. For instance, you shouldn't have to be worrying about defensively duping invariant arrays.
Mar 06 2008
"Walter Bright" <newshound1 digitalmars.com> wroteKris wrote:It is simpler and generally more effective to design an API which avoids the .dup issue. Thus, IMO, const and invariant typically have little value for well over 90% of engineering with D, assuming 'in' remains as always. Yeah, I'm aware of and appreciate the potential benefits involved, both large and small and in their various guises for current and future goodies within D ... but the usage is currently not sufficiently transparent. Usage of dup (and idup) is not a good poster-child to hold aloft, when they can be avoided in the vast majority of cases. For example, in all of Tango there's only one instance where a const return would be nice to have, due mostly to an avoidance of the situation. The usage of D1 'in' can suffice for all read-only parameters. Tango is a large body of code, as you know, with attention given to efficiency. One might hope the highly narrow scope therein for D2 const/invariant might indicate something of value for you -- perhaps that const/invariant might slip into a "special consideration" usage instead? If it simplified the syntax and/or usage, a lot of people would be jumping into D2 instead of remaining with D1 What I'm saying is effectively this: you don't have to solve all the const cases to still have a stupidly-effective language. The tradeoffs to get there so far are, imo, too costly in areas of comprehension and usability - two huge factors in the attraction of D in the first place. Some folks might disagree, and that's cool. It would be interesting to draw a graph plotting "degree of involvement in large-scale D engineering" versus "perceived complexity/value tradeoff regarding const" 2cWhile I understand how things can sometimes quickly become complex while trying to support a simple notion, there's nothing trivial at all about using or comprehending the D2 const mechanisms. A claim has been made that one does not have to use or be aware of const or invariant to use D2 ... unfortunately that does not appear to be the case in practice, and the added complexity makes D2 harder to work with than D1.In some ways it is more complex, but in other ways it is simpler. Not the language, but the way it is used. For instance, you shouldn't have to be worrying about defensively duping invariant arrays.
Mar 07 2008
Kris wrote:It is simpler and generally more effective to design an API which avoids the .dup issue.But you shouldn't *need* to be doing .dup for invariant arrays. If you are duping them, there's a problem somewhere else in the code.Usage of dup (and idup) is not a good poster-child to hold aloft, when they can be avoided in the vast majority of cases. For example, in all of Tango there's only one instance where a const return would be nice to have, due mostly to an avoidance of the situation. The usage of D1 'in' can suffice for all read-only parameters. Tango is a large body of code, as you know, with attention given to efficiency. One might hope the highly narrow scope therein for D2 const/invariant might indicate something of value for you -- perhaps that const/invariant might slip into a "special consideration" usage instead? If it simplified the syntax and/or usage, a lot of people would be jumping into D2 instead of remaining with D1You can write bug-free and perfectly correct programs without const or invariant at all. But once a code base exceeds a certain level of size and complexity (and I don't know what that level is), const/invariant will become increasingly valuable. People who do work in large corporations managing extremely large codebases with legions of programmers working on them have made this abundantly clear to me.What I'm saying is effectively this: you don't have to solve all the const cases to still have a stupidly-effective language. The tradeoffs to get there so far are, imo, too costly in areas of comprehension and usability - two huge factors in the attraction of D in the first place. Some folks might disagree, and that's cool.Part of the problem with const/invariant in D is we burned a lot of goodwill with the two previous designs that fell short of the mark. But I believe the design now is a sound one (despite the bugs in implementing some of the details, many of which were fixed in the latest update).
Mar 07 2008
Walter Bright wrote:You can write bug-free and perfectly correct programs without const or invariant at all. But once a code base exceeds a certain level of size and complexity (and I don't know what that level is), const/invariant will become increasingly valuable. People who do work in large corporations managing extremely large codebases with legions of programmers working on them have made this abundantly clear to me.Yes, they believe they need it. Sure. But I doubt many of them have done any sort of analysis of how much it actually helps vs. how much it complicates their code base. I say this as someone who was totally sold on C++ const for the first 10 years I used it. Now I'm kind of used to not having it. And, well, the sky hasn't fallen. But lots of my code has lost superfluous redundancy. But I'm going to start trying to compile my code with D2 this weekend and see how it goes. Hopefully const will mostly stay out of my way. --bb
Mar 07 2008
Bill Baxter wrote:Walter Bright wrote:C++ const is not too useful anyway, as it is not transitive and not invariant. It's more of a convention.You can write bug-free and perfectly correct programs without const or invariant at all. But once a code base exceeds a certain level of size and complexity (and I don't know what that level is), const/invariant will become increasingly valuable. People who do work in large corporations managing extremely large codebases with legions of programmers working on them have made this abundantly clear to me.Yes, they believe they need it. Sure. But I doubt many of them have done any sort of analysis of how much it actually helps vs. how much it complicates their code base. I say this as someone who was totally sold on C++ const for the first 10 years I used it.Now I'm kind of used to not having it. And, well, the sky hasn't fallen. But lots of my code has lost superfluous redundancy. But I'm going to start trying to compile my code with D2 this weekend and see how it goes. Hopefully const will mostly stay out of my way. --bb
Mar 07 2008
== Quote from Walter Bright (newshound1 digitalmars.com)'s articleBill Baxter wrote:I can't speak for anyone else, but my issue with C++ const had nothing to do with its reliability. (which I felt was fine) but more to do with its impact on the semantics of the language, and more importantly, on the maintainability of C++ code. Personally, I found C++ const to be more of an obstacle to maintainability than an aid. This was for two reasons: * The const features were applied inconsistently in the codebase, so changes sometimes required const qualifiers to be reworked or new unrelated const methods to be added to suit the situation. * C++ requires duplicate const and non-const member functions in many cases to switch on return value, etc. And duplicate code is never a good thing. I suspect that transitive const in D will largely answer the first point however, and I remember there being some talk of adaptable return types to handle the second point. I'm not clear on how the latter bit works though, and I think it's still yet to be implemented, correct? SeanYes, they believe they need it. Sure. But I doubt many of them have done any sort of analysis of how much it actually helps vs. how much it complicates their code base. I say this as someone who was totally sold on C++ const for the first 10 years I used it.C++ const is not too useful anyway, as it is not transitive and not invariant. It's more of a convention.
Mar 07 2008
Sean Kelly wrote:I suspect that transitive const in D will largely answer the first point however, and I remember there being some talk of adaptable return types to handle the second point. I'm not clear on how the latter bit works though, and I think it's still yet to be implemented, correct?The adaptable return types issue has not been properly addressed yet. It was deferred because it is an orthogonal issue to the main design.
Mar 07 2008
"Walter Bright" <newshound1 digitalmars.com> wrote in message news:fqr25f$2d82$1 digitalmars.com...Kris wrote:Indeed. This is the very argument used to refute your earlier claims about COW being the true-path <g>. The result of that was to design around the issue altogether. You certainly won't find me invoking the wrath of redundant .dup (and surely the mere existence of .idup should ring alarm-bells).It is simpler and generally more effective to design an API which avoids the .dup issue.But you shouldn't *need* to be doing .dup for invariant arrays. If you are duping them, there's a problem somewhere else in the code.Yes, I agree, and put this argument to you several years ago while COW was king for D. My whole point is that D2 has made const/invariant into something that complicates the usage and comprehension of the language as a whole: - Yes, read-only attributes can be /very/ useful in specific scenarios. - Yes, D already supported various (non-const) ways to enable read-only aggregates - Yes, D1 already had read-only parameters - Yes, most people can happily get by without const/invariant - Yes, there are other valuable uses for invariant that have yet to ripen (parallelization, for example) - Yes, the further revised design of const/invariant in D2 still complicate language usage & comprehension past the level where the tradeoffs make sense (IMO). I've tried to say this already, and will keep repeating it <g>Usage of dup (and idup) is not a good poster-child to hold aloft, when they can be avoided in the vast majority of cases. For example, in all of Tango there's only one instance where a const return would be nice to have, due mostly to an avoidance of the situation. The usage of D1 'in' can suffice for all read-only parameters. Tango is a large body of code, as you know, with attention given to efficiency. One might hope the highly narrow scope therein for D2 const/invariant might indicate something of value for you -- perhaps that const/invariant might slip into a "special consideration" usage instead? If it simplified the syntax and/or usage, a lot of people would be jumping into D2 instead of remaining with D1You can write bug-free and perfectly correct programs without const or invariant at all. But once a code base exceeds a certain level of size and complexity (and I don't know what that level is), const/invariant will become increasingly valuable. People who do work in large corporations managing extremely large codebases with legions of programmers working on them have made this abundantly clear to me.There's no question here of whether it may or may not be 'sound' ... instead, it's a question of usability. There's not much value in being the world's most wonderful companion when one's body-odor is sufficient to keep everyone at bay - like most things, there's a question of balance. You seem to think D2 has finally got it right. I disagree, as do many other large-scale users of the language (the very people who you'd expect to be in the D2 camp without question). I'm not here to argue about black or white. Instead I'm attempting to help you understand the reasons why so few people have adopted D2 .... to leverage the earlier analogy, D1 ain't a perfect companion but it has very little body-odor Hope this helps; 2cWhat I'm saying is effectively this: you don't have to solve all the const cases to still have a stupidly-effective language. The tradeoffs to get there so far are, imo, too costly in areas of comprehension and usability - two huge factors in the attraction of D in the first place. Some folks might disagree, and that's cool.Part of the problem with const/invariant in D is we burned a lot of goodwill with the two previous designs that fell short of the mark. But I believe the design now is a sound one (despite the bugs in implementing some of the details, many of which were fixed in the latest update).
Mar 07 2008
On 07/03/2008, Kris <foo bar.com> wrote:... why so few people have adopted D2I have no idea how many people have adopted D1 I have no idea how many people have adopted D2 But you apparently do, so please do share those numbers. Thanks.
Mar 07 2008
Janice Caron wrote:On 07/03/2008, Kris <foo bar.com> wrote:There was a poll not so long ago. Maybe you missed it. http://baxissimo.freepolls.com/cgi-bin/pollresults/001 It came out about 3:1 D1 users:D2 users. More D2 users than I was expecting. But of course it was a self-selecting poll, only announced here on the NG, so you have to take it with a heavy grain of salt. --bb... why so few people have adopted D2I have no idea how many people have adopted D1 I have no idea how many people have adopted D2 But you apparently do, so please do share those numbers. Thanks.
Mar 07 2008
On 07/03/2008, Bill Baxter <dnewsgroup billbaxter.com> wrote:There was a poll not so long ago. Maybe you missed it. http://baxissimo.freepolls.com/cgi-bin/pollresults/001I did indeed miss that. Thanks for the link.It came out about 3:1 D1 users:D2 users. More D2 users than I was expecting.And (proportionately) more D1 users than I was expecting. Hey ho.But of course it was a self-selecting poll, only announced here on the NG, so you have to take it with a heavy grain of salt.Indeed. If that poll is accurate then only 119 people use D. :-)
Mar 07 2008
Janice Caron wrote:On 07/03/2008, Bill Baxter <dnewsgroup billbaxter.com> wrote:Some people responded directly to the NG. I'll repaste the summary here: Here's a summary of the poll results: ------------------------------- From the web poll: Yes: 28 No: 87 From replies here: Yes: ~6 No: ~13 Totals: Yes: 34/134 = 25% No: 100/134 = 75% -------------------------------- Original post: digitalmars.com digitalmars.D:61017 But anyway, how many people do you think do use D overall? My guess would be about 10x that number. That's discounting people who just tried hello world once to see if it worked. But I guess Walter should have a better idea of the actual figure based --bbThere was a poll not so long ago. Maybe you missed it. http://baxissimo.freepolls.com/cgi-bin/pollresults/001I did indeed miss that. Thanks for the link.It came out about 3:1 D1 users:D2 users. More D2 users than I was expecting.And (proportionately) more D1 users than I was expecting. Hey ho.But of course it was a self-selecting poll, only announced here on the NG, so you have to take it with a heavy grain of salt.Indeed. If that poll is accurate then only 119 people use D. :-)
Mar 07 2008
On 07/03/2008, Bill Baxter <dnewsgroup billbaxter.com> wrote:how many people do you think do use D overall?It's not in my nature to form opinions in the absence of data.
Mar 07 2008
Janice Caron wrote:On 07/03/2008, Bill Baxter <dnewsgroup billbaxter.com> wrote:Fair enough. But there is various data. Number of websites about D, number of posters here on the NG. Number of people on IRC. Number of google hits for "D programming language", number of pins in the D frappr map. Etc. --bbhow many people do you think do use D overall?It's not in my nature to form opinions in the absence of data.
Mar 07 2008
On 07/03/2008, Bill Baxter <dnewsgroup billbaxter.com> wrote:Absence of data? It would be kind of strange to have no data at all. I at the very least know that I know nobody around me who uses D and plenty who use other languages. Its not like there are hard fact (in general, but that too much phil) about the exact user count of any proramming language. Then there is tiobe and we know about a few books / conferences. And in addition to this I have a guess from bb. My guess from all this data would be that 1000 is too low.how many people do you think do use D overall?It's not in my nature to form opinions in the absence of data.
Mar 07 2008
Janice Caron Wrote:On 07/03/2008, Bill Baxter <dnewsgroup billbaxter.com> wrote:That is the funniest, and perhaps most deliberately misleading post ever made to this NG lmaohow many people do you think do use D overall?It's not in my nature to form opinions in the absence of data.
Mar 07 2008
"Kris" <foo bar.com> wrote in message news:fqse2j$2s5n$1 digitalmars.com...Janice Caron Wrote:Now, now!On 07/03/2008, Bill Baxter <dnewsgroup billbaxter.com> wrote:That is the funniest, and perhaps most deliberately misleading post ever made to this NGhow many people do you think do use D overall?It's not in my nature to form opinions in the absence of data.
Mar 07 2008
Jarrett Billingsley Wrote:"Kris" <foo bar.com> wrote in message news:fqse2j$2s5n$1 digitalmars.com...Seriously Jarrett ... I'll be happy to dig up prior posts to illustrate :) I believe there's at least one beauty about how Tango is written by amateurs or ignorant fools, or something, all based merely upon the existence of CamelCase in module names. Classic stuff, and quite contrary to claims of "It's not in my nature to form opinions in the absence of data". If you deliberately manufacture or synthesize said data, or otherwise generate it via one's subjective whims alone, then obviously the claim would hold true in the above example or any other. Slick huh? I'm not here to rock the boat, but really ...Janice Caron Wrote:Now, now!On 07/03/2008, Bill Baxter <dnewsgroup billbaxter.com> wrote:That is the funniest, and perhaps most deliberately misleading post ever made to this NGhow many people do you think do use D overall?It's not in my nature to form opinions in the absence of data.
Mar 07 2008
"Kris" <foo bar.com> wrote in message news:fqt2lb$1897I'm not saying that I necessarily disagree ;) But it's just certain things shouldn't necessarily be said in mixed company is all.Now, now!Seriously Jarrett ... I'll be happy to dig up prior posts to illustrate :)
Mar 08 2008
On 08/03/2008, Kris <foo bar.com> wrote:I believe there's at least one beauty about how Tango is written by amateurs or ignorant fools, or something, all based merely upon the existence of CamelCase in module names.I'm not quite sure where you're going with this, but "Tango is written by amateurs or ignorant fools" has never been said by anyone, so far as I am aware, and certainly not by me. Last time I called strawman on that very point, Jeff Nowakowski had to dig up the exact quote to end the conversation. I was rather hoping that that would be the end of it for all time. Aparently not. So for the record ... /again/ ... this is what I claimed, way back in September 2007: I claimed that my first impression upon reading the Tango documentation was that the decision to deliberately violate the D style guide had been a petty decision. In the same post I apologised in case that came across as contentious. I tend to assume that writers (even writers of documentation) appreciate feedback about what sort of first impressions their work conveys, so I assumed that the feedback would be welcome. In subsequent posts I went on to add that the core body of code in Tango is excellent. (Feedback for any of my own documentation is /encouraged/, by the way. If it sucks, or gives any misleading impression, tell me). So, Kris, you /know/ that I don't think that "Tango is written by amateurs or ignorant fools", and that I have not ever made that claim, so please, please, please let us put this to rest once and for all. Every time you retell this, you exaggerate upon your previous retelling, and it was already inaccurate the last time. This got old a long time ago. Can we drop it?
Mar 08 2008
There needs to be a foil for your BS, Janice, since some newer people may accidentally actually buy into it. Thus, every time these BS filters have a meltdown, I will happily call you out: You claim: --- It's not in my nature to form opinions in the absence of data --- You said: ------ Module names in mixed case!? Did the Tango folk not read the D style guide where it says "Module and package names are all lower case, and only contain the characters [a..z][0..9][_]", or did they just purposefully decide to avoid it? If the former, that was amateurish; if the latter, it was petty. ------ In case you don't recognise it, that is one pompous, arrogant and subjective opinion, in the absence of any realistic data whatsoever. It took a litany of further posts for you to even grasp that a 'style guide' is just that: a Guide. Full post is right here: http://www.digitalmars.com/d/archives/digitalmars/D/Re_D_Conference_Tango_Phobos_58225.html#N58577 You call for moderation on these forums, Janice. The bullshit needs to be moderated too. After all, this is supposed to be a place for learning. "Janice Caron" <caron800 googlemail.com> wrote [snip]This got old a long time ago. Can we drop it?It was old the first time around.
Mar 08 2008
On 08/03/2008, Kris <foo bar.com> wrote:You said: ------ Module names in mixed case!? Did the Tango folk not read the D style guide where it says "Module and package names are all lower case, and only contain the characters [a..z][0..9][_]", or did they just purposefully decide to avoid it? If the former, that was amateurish; if the latter, it was petty. ------I did, albeit six months ago. More to the point, I did /not/ say, and have never said: "Tango is written by amateurs or ignorant fools". That was a strawman. Now /please/ drop this vendetta.
Mar 08 2008
"Janice Caron" <caron800 googlemail.com> wrote inOn 08/03/2008, Kris <foo bar.com> wrote:BS is BS. Period. Also, you cutely cut out the appropriate part, Janice. Here's my post: --- I believe there's at least one beauty about how Tango is written by amateurs or ignorant fools, or something, all based merely upon the existence of CamelCase in module names. --- See the "or something, " in there? Obviously there was no word-for-word recall, yet the implied gist was conveyed.You said: ------ Module names in mixed case!? Did the Tango folk not read the D style guide where it says "Module and package names are all lower case, and only contain the characters [a..z][0..9][_]", or did they just purposefully decide to avoid it? If the former, that was amateurish; if the latter, it was petty. ------I did, albeit six months ago. More to the point, I did /not/ say, and have never said: "Tango is written by amateurs or ignorant fools". That was a strawman.Now /please/ drop this vendetta.There's no vendetta anywhere in the vicinity ... just a run-of-the mill BS call-out. You drop the BS and the attitude, and you won't get called out on it. Take or leave it as you choose
Mar 08 2008
On 08/03/2008, Kris <foo bar.com> wrote:You misunderstand the source of my objection. I have /no/ problem with you calling out hypocrisy, if you feel it's your duty to do that. You may even be right - In one sense perhaps I did leap to a conclusion on the basis of insufficient evidence, six months ago. However, what I object to is being maliciously misquoted. I did /not/, repeat, /not/, say that Tango is written by amateurs or ignorant fools, or something, either with or without the "or something". That is simply untrue. The difficulty is, every time you paraphrase me, you change the meaning in a way which fails to convey my original intent, and indeed which conveys a completely different message. That constitutes putting words into my mouth. I realise you feel that the words "or something" constitute a suitable disclaimer, but they don't. Really, they don't. In summary then: /no/ problem with your calling out hypocrisy; /big/ problem with being misquoted. (There's also no need for it: I'm here - you can just /ask/ me my opinion). If you could cut back on the misquoting, we'll get along just fine.I did, albeit six months ago. More to the point, I did /not/ say, and> have never said: "Tango is written by amateurs or ignorant fools". > That was a strawman. BS is BS. Period. Also, you cutely cut out the appropriate part, Janice. Here's my post: --- I believe there's at least one beauty about how Tango is written by amateurs or ignorant fools, or something, all based merely upon the existence of CamelCase in module names. --- See the "or something, " in there? Obviously there was no word-for-word recall, yet the implied gist was conveyed. > Now /please/ drop this vendetta. There's no vendetta anywhere in the vicinity ... just a run-of-the mill BS call-out. You drop the BS and the attitude, and you won't get called out on it. Take or leave it as you choose
Mar 09 2008
Janice Caron wrote:The difficulty is, every time you paraphrase me, you change the meaning in a way which fails to convey my original intent, and indeed which conveys a completely different message.It's a deficiency of the communication medium.
Mar 09 2008
"Janice Caron" <caron800 googlemail.com> wroteOn 08/03/2008, Kris <foo bar.com> wrote:Ah, some more BS there -- while you call for moderated forums, and claim to have no problem with anyone calling out your hypocrisy, you're happy to drop snide remarks regarding "duty" :pThere's no vendetta anywhere in the vicinity ... just a run-of-the mill BS call-out. You drop the BS and the attitude, and you won't get called out on it. Take or leave it as you chooseYou misunderstand the source of my objection. I have /no/ problem with you calling out hypocrisy, if you feel it's your duty to do that.You may even be right - In one sense perhaps I did leap to a conclusion on the basis of insufficient evidence, six months ago.Six-months has no relevance whatsoever. You answered Bill with a hypocrtical and typically pompous claim, and apparently want to drag this out as long as possible. Fair enough. You claim: --- It's not in my nature to form opinions in the absence of data --- You had said: ------ Module names in mixed case!? Did the Tango folk not read the D style guide where it says "Module and package names are all lower case, and only contain the characters [a..z][0..9][_]", or did they just purposefully decide to avoid it? If the former, that was amateurish; if the latter, it was petty. ------ I noted: ------ I believe there's at least one beauty about how Tango is written by amateurs or ignorant fools, or something, all based merely upon the existence of CamelCase in module names. ------However, what I object to is being maliciously misquoted. I did /not/, repeat, /not/, say that Tango is written by amateurs or ignorant fools, or something, either with or without the "or something". That is simply untrue.Maliciously misquoted? Bullshit <g> -- it is questionable that you were even "quoted", and any 'malicious' aspect is manufactured entirely by yourself. Seems to me like you're splitting hairs in a vague attempt to deflect attention. In fact - if there's /anything/ dubious going on here, it would appear to lie within your attempts to paint this callout as "malicious" and as a "vendetta", when in fact it is merely a way to let new people know that your sacred "opinion" is not at all what you claim it to be.If you could cut back on the misquoting, we'll get along just fine.Yes, it is perfectly clear that you /really/ want to make this someone else's problem. You got caught out by your own petty arrogance -- have sufficient grace to accept that without the ongoing pedantic nonsense, and we'll get along just fine
Mar 09 2008
watching for quite a while. you really kill me. are you resistant to to see that you did something wrong??? please go into yourself and think a little. sorry not an english native. Kris Wrote:"Janice Caron" <caron800 googlemail.com> wroteOn 08/03/2008, Kris <foo bar.com> wrote:Ah, some more BS there -- while you call for moderated forums, and claim to have no problem with anyone calling out your hypocrisy, you're happy to drop snide remarks regarding "duty" :pThere's no vendetta anywhere in the vicinity ... just a run-of-the mill BS call-out. You drop the BS and the attitude, and you won't get called out on it. Take or leave it as you chooseYou misunderstand the source of my objection. I have /no/ problem with you calling out hypocrisy, if you feel it's your duty to do that.You may even be right - In one sense perhaps I did leap to a conclusion on the basis of insufficient evidence, six months ago.Six-months has no relevance whatsoever. You answered Bill with a hypocrtical and typically pompous claim, and apparently want to drag this out as long as possible. Fair enough. You claim: --- It's not in my nature to form opinions in the absence of data --- You had said: ------ Module names in mixed case!? Did the Tango folk not read the D style guide where it says "Module and package names are all lower case, and only contain the characters [a..z][0..9][_]", or did they just purposefully decide to avoid it? If the former, that was amateurish; if the latter, it was petty. ------ I noted: ------ I believe there's at least one beauty about how Tango is written by amateurs or ignorant fools, or something, all based merely upon the existence of CamelCase in module names. ------However, what I object to is being maliciously misquoted. I did /not/, repeat, /not/, say that Tango is written by amateurs or ignorant fools, or something, either with or without the "or something". That is simply untrue.Maliciously misquoted? Bullshit <g> -- it is questionable that you were even "quoted", and any 'malicious' aspect is manufactured entirely by yourself. Seems to me like you're splitting hairs in a vague attempt to deflect attention. In fact - if there's /anything/ dubious going on here, it would appear to lie within your attempts to paint this callout as "malicious" and as a "vendetta", when in fact it is merely a way to let new people know that your sacred "opinion" is not at all what you claim it to be.If you could cut back on the misquoting, we'll get along just fine.Yes, it is perfectly clear that you /really/ want to make this someone else's problem. You got caught out by your own petty arrogance -- have sufficient grace to accept that without the ongoing pedantic nonsense, and we'll get along just fine
Mar 09 2008
"lurker" <lurker lurk.com> wrote in message news:fr1fek$29jf$1 digitalmars.com...watching for quite a while. you really kill me. are you resistant to to see that you did something wrong??? please go into yourself and think a little. sorry not an english native.Your English is perfectly fine ... don't worry about it. It would be helpful if perhaps you would be more specific in what you are criticizing? Without that, your post can run the risk of being mistaken for that of a troll, and I'm sure that's not the case here. Also, it can be worth noting that anonymous posts are often disregarded, especially where the subject matter is perhaps a little delicate? That's because there's a couple of lurking jokers who find joy in the act of sock-puppetry, as they troll. Cheers;
Mar 09 2008
Kris wrote:"lurker" <lurker lurk.com> wrote in message news:fr1fek$29jf$1 digitalmars.com...I see his point and agree. As I understand it, Janice has no problem with being called on hypocrysy, as long as you do it without spreading misinformation. Just because, as you so repeatedly insisted, her opinion may be BS, does not ... Oh damn. I don't know if kris is male or female. Okay, let's do this again. Just because, as you so repeatedly insisted, his/her opinion may be BS, does not mean you can misquote her. This is, as far as I can see, what kris is taking issue with, and I have to agree with him/her. Remember kids, two wrongs don't make a right! --downswatching for quite a while. you really kill me. are you resistant to to see that you did something wrong??? please go into yourself and think a little. sorry not an english native.Your English is perfectly fine ... don't worry about it. It would be helpful if perhaps you would be more specific in what you are criticizing? Without that, your post can run the risk of being mistaken for that of a troll, and I'm sure that's not the case here. Also, it can be worth noting that anonymous posts are often disregarded, especially where the subject matter is perhaps a little delicate? That's because there's a couple of lurking jokers who find joy in the act of sock-puppetry, as they troll. Cheers;
Mar 10 2008
Kris wrote:"Janice Caron" <caron800 googlemail.com> wroteHey you two! Get off my thread! Just kidding. Looks like we were just about done discussing the D1 situation anyway, so go ahead and use the thread for whatever you feel like. But staying here might make it harder for you to dig up incriminating quotes about each other later. :-P --bbOn 08/03/2008, Kris <foo bar.com> wrote:
Mar 09 2008
"Bill Baxter" <dnewsgroup billbaxter.com> wrote...Kris wrote:Yeah, my apologies for the OT. Seems like there's some kind of sock-puppetry starting too. later o/"Janice Caron" <caron800 googlemail.com> wroteHey you two! Get off my thread! Just kidding. Looks like we were just about done discussing the D1 situation anyway, so go ahead and use the thread for whatever you feel like. But staying here might make it harder for you to dig up incriminating quotes about each other later. :-P --bbOn 08/03/2008, Kris <foo bar.com> wrote:
Mar 09 2008
On 09/03/2008, Kris <foo bar.com> wrote:when in fact it is merely a way to let new people know that your sacred "opinion" is not at all what you claim it to be.I surrender, OK? Just write the confession and I'll sign it. If there is /anything/ at all which I can say, which will make you happy enough not to attack me ever again, just tell me what it is, and I'll say it. Likewise, if there is anything specific you want me /not/ to say, please tell me that too, and I'll not say it. If you want me to leave this newsgroup forever, I'll even do that. This is an unconditional surrender. I've had enough. You win.
Mar 10 2008
"Janice Caron" wroteOn 09/03/2008, Kris wrote:Kids, if you don't stop arguing back there, I'm going to pull this NG over and kick your asses. Stop with the drama, let's do something productive... -Stevewhen in fact it is merely a way to let new people know that your sacred "opinion" is not at all what you claim it to be.I surrender, OK? Just write the confession and I'll sign it. If there is /anything/ at all which I can say, which will make you happy enough not to attack me ever again, just tell me what it is, and I'll say it. Likewise, if there is anything specific you want me /not/ to say, please tell me that too, and I'll not say it. If you want me to leave this newsgroup forever, I'll even do that. This is an unconditional surrender. I've had enough. You win.
Mar 10 2008
Janice Caron Wrote:On 09/03/2008, Kris <foo bar.com> wrote:1. andre 2. janice all it takes to mess up a online community is a determined kretin.when in fact it is merely a way to let new people know that your sacred "opinion" is not at all what you claim it to be.I surrender, OK? Just write the confession and I'll sign it. If there is /anything/ at all which I can say, which will make you happy enough not to attack me ever again, just tell me what it is, and I'll say it. Likewise, if there is anything specific you want me /not/ to say, please tell me that too, and I'll not say it. If you want me to leave this newsgroup forever, I'll even do that. This is an unconditional surrender. I've had enough. You win.
Mar 10 2008
i don't know who wrote this, but it was not me. i wrote yesterday and recieved an answer from kris: "lurker" <lurker lurk.com> wrote in message news:fr1fek$29jf$1 digitalmars.com...Your English is perfectly fine ... don't worry about it. It would be helpful if perhaps you would be more specific in what you are criticizing? Without that, your post can run the risk of being mistaken for that of a troll, and I'm sure that's not the case here. Also, it can be worth noting that anonymous posts are often disregarded, especially where the subject matter is perhaps a little delicate? That's because there's a couple of lurking jokers who find joy in the act of sock-puppetry, as they troll. Cheers; lurker Wrote:watching for quite a while. you really kill me. are you resistant to to see that you did something wrong??? please go into yourself and think a little. sorry not an english native.Janice Caron Wrote:On 09/03/2008, Kris <foo bar.com> wrote:1. andre 2. janice all it takes to mess up a online community is a determined kretin.when in fact it is merely a way to let new people know that your sacred "opinion" is not at all what you claim it to be.I surrender, OK? Just write the confession and I'll sign it. If there is /anything/ at all which I can say, which will make you happy enough not to attack me ever again, just tell me what it is, and I'll say it. Likewise, if there is anything specific you want me /not/ to say, please tell me that too, and I'll not say it. If you want me to leave this newsgroup forever, I'll even do that. This is an unconditional surrender. I've had enough. You win.
Mar 10 2008
"lurker" <lurker lurk.com> wrote ...all it takes to mess up a online community is a determined kretin.The damage done by trolls, puppeteers, fud-mongers and their ilk is at the core of every rotted community. So yes, we agree that one determined, anonymous, malicious moron can indeed mess up an online community. It's no secret who you are, behind the curtain, for those who care to dig a little. Cheers!
Mar 12 2008
Kris Wrote:"lurker" <lurker lurk.com> wrote ...yeah i am the guy who was stealing your sandwiches in kindergarten. kretinis just go. we'll be so much happier.all it takes to mess up a online community is a determined kretin.The damage done by trolls, puppeteers, fud-mongers and their ilk is at the core of every rotted community. So yes, we agree that one determined, anonymous, malicious moron can indeed mess up an online community. It's no secret who you are, behind the curtain, for those who care to dig a little.
Mar 13 2008
"Janice Caron" <caron800 googlemail.com> wroteif there is anything specific you want me /not/ to say, please tell me that too, and I'll not say it.I'd intended to forego further posts on this topic, but you are asking for a response. Pardon the delay, and I'll try to be appropriately objective: It's a question of double-standards, Janice. Not specifically what you, I, or anyone else says per se. While you sometimes appear to be adept at dishing out innuendo and/or the occasional scathing remark, you invariably cry wolf when some of that comes back to you. For the sake of illustration, I will stick purely to the content related to this exchange. Please do not read any more into it than merely an illustration. In that vein, I'm going to use the same 'opinion' of yours as before and attempt to paint an alternate viewpoint for you. Here it is: ------ Module names in mixed case!? Did the Tango folk not read the D style guide where it says "Module and package names are all lower case, and only contain the characters [a..z][0..9][_]", or did they just purposefully decide to avoid it? If the former, that was amateurish; if the latter, it was petty. ------ You can argue the following observations all you like. However, you've effectively asked me what you might do, or not do, in order to avoid opening yourself up to criticism - here's how things look from one perspective: 1) Your message is making strong assertions about the intent and capabilities of the targeted individuals. Think, for a moment, about how you'd react if the tables were turned? Going by past behaviour, you'd call out "Ad Hominum!" or otherwise convey some righteous indignation. Yet you seem quite comfortable with the delivery yourself. Let us save the semantic-splitting for the lingusitic gymnasts ... in your post, you are directly discussing several people who can correctly identify intent. 2) Those assertions are based entirely upon your personal opinion of what a 'style-guide' represents. See that gaping chasm between the reality of what you claim to be a problem, and how you shape it (replete with exclamation and accompanying rhetoric) ... it is tricky to define this gap in any kind of glowing terms. This current exchange began via a simple BS callout. Along the way, you've characterized that act as "malicious", as a "vendetta", a "strawman", and an "attack". Just what do you call your above "amatuerish" message? It was apparently unprovoked, so therefore is an attack? Is it perhaps a strawman also? Does seems that way. Are you really so terribly precocious as to think any decision made therein, without your consent, warranted quite such disdain and drama from you? If not, then your post was also perhaps malicious? Maybe even with shades of a vendetta? The specific point here is not that you made these unwarranted and uninformed claims, but that you subsequently wave the terms "attack", "vendetta", "malicious" and so on like theAd Hominum club when you have opened yourself up to some criticism. 3) There was an occasion related to the above post where, if I recall correctly, you took offence and demanded an apology. I don't remember seeing you offering an apology to the various people you likely offended (potentially in a malicious manner) via the intended implications of your message? Of course, nobody asked for a subsequent apology (and nobody is 4) I recall that you once claimed to be a writer of fiction? Then you must clearly comprehend the distinction between "quoting" and abstract paraphrasing. That hasn't stopped you from using the spit-on-me-but-dont-you-dare-misquote-me responses echoed in this exchange. That is, you fully understand that is not applicable, but use it for effect 5) I've witnessed you make two calls for forum moderation. Most recently, I believe the call was with regard to Ty Tower? You do realize, I hope, that moderation takes many forms, and that perhaps some of your posts warrant moderation also? Certainly, the death-threats and Nazi-style propoganda eminating from Mr Tower is of a rather different nature, yet moderation is The take-away message is that, whether you like it or not, the level of hypocrisy can sometimes become overbearing from a different perspective. And that's related to just a single post, Janice. Even if you claim some of it to be a stretch, it does leave a lot of question-marks hanging. This is why I called you out on the somewhat grandiose and (IMO) badly misleading claim you made earlier. Nobody else does this kind of thing on the NG ... you are really out there by yourself, and thus make yourself a target for subsequent criticism.If you want me to leave this newsgroup forever, I'll even do that.Sadly, this is a martyr card. The one that usually screams "It's all your fault, and I'm entirely innocent!". I have no personal desire for you to do anything, Janice, other than to perhaps drop the double-standards. Perhaps some folk will view this post as a personal attack, or some such. It is not, or rather, it certainly not intended to be. Instead, it is merely complying with your request. Take it for what it is and no more. Lastly - a general mea-culpa from me to everyone, since I've obviously played my part in reducing the signal-to-noise-ratio via this exchange. I offer you my apologies for doing so.
Mar 12 2008
Kris Wrote:5) I've witnessed you make two calls for forum moderation. Most recently, I believe the call was with regard to Ty Tower? You do realize, I hope, that moderation takes many forms, and that perhaps some of your posts warrant moderation also? Certainly, the death-threats and Nazi-style propoganda eminating from Mr Tower is of a rather different nature, yet moderation isErr Death threats? I said" if I had my way I would shoot you". Bit of difference to a death threat if you think about it . Kinda convenient for your tirade though heh? And Nazi style propaganda ! You exagerate grossly when it suits .
Mar 13 2008
On 12/03/2008, Kris <foo bar.com> wrote:"Janice Caron" <caron800 googlemail.com> wrote > if there is anything specific you want me /not/ > to say, please tell me that too, and I'll not say it. I'd intended to forego further posts on this topic, but you are asking for a response. Pardon the delay, and I'll try to be appropriately objective: I will stick purely to the content related to this exchange. Please do not read any more into it than merely an illustration. In that vein, I'm going to use the same 'opinion' of yours as before and attempt to paint an alternate viewpoint for you. Here it is: ------ Module names in mixed case!? Did the Tango folk not read the D style guide where it says "Module and package names are all lower case, and only contain the characters [a..z][0..9][_]", or did they just purposefully decide to avoid it? If the former, that was amateurish; if the latter, it was petty. ------ you've effectively asked me what you might do, or not do, in order to avoid opening yourself up to criticismYes, I have. That is exactly what I am asking. Thank you for trying to answer.1) Your message is making strong assertions about the intent and capabilities of the targeted individuals. Think, for a moment, about how you'd react if the tables were turned?OK, well ignoring for the moment the fact that no insult was /intended/, I do fully accept that offense was /taken/. However, it's hard to know how I can "stop" having made a post in the past, when I have already apologised for it many times. After all, in the exact same post, a little bit further down, I said: "My apologies if I come across as contentious." The following day, on September 16th 2007, I apologised again, twice, in two separate posts. I quote: 'I am truly sorry that use of the word "petty" offended you. If it helps ease tensions, then I apologise for using it.', and again: "So I apologise if my first impression offended you". I have also said many rather nice things about Tango. For example, two days later, on September 18th 2007: "I'm also capable of just speaking in words, and saying what I think, which is that Tango is a truly excellent body of work with some fantastic code in it." Also, on the same day: "So yes, the core body of code in Tango is excellent. The engine that does all the work is a fantastic bit of software, and not in the least bit amateurish.", as well as the further clarification: "I think it's more that words were /taken/ personally when they were not intended as such. I know that I have never criticised any individual, and never would." Without a time-machine, I cannot un-make the post, so all can do is keep apologising, and I haven't apologised enough alreadly, allow me to do so again: I apologise. But the point I'm making here is that since that post was made on September 15th 2007, then I "stopped" making it on September 16th. I cannot "stop" making it today or tomorrow any more than I can "stop" making it yesterday. Since I have not made any negative comments about Tango or its developers since September 16th 2007 (nor insulted any individual /ever/), can we not just agree that such posts have already, in fact, "stopped", and that it is therefore not possible for me to stop any further?Along the way, you've characterized that act as "malicious", as a "vendetta", a "strawman", and an "attack".Yes, the one thing which really bothers me is misrepresentation. All the rest, I can ignore, but misrepresentation is something that I do perceive as an attack, even if you don't intend it as such. It's just, if ever anyone says "Janice says X" or "Janice thinks Y" or "Janice believes Z", where I do not, in fact, say/think/believe X, Y, or Z, or makes any statement which gives the imprerssion that I believe something other than that which I actually believe, then I feel compelled to step in and say "Wait a minute - that part's not actually true". It's not my intention to exacerbate any dispute, but I just cannot stand by and let someone else put words or opinions into my mouth. Honestly, if someone wants to know what I think, they only have to ask me.Just what do you call your above "amatuerish" message?Again, we're revisiting September, and a post (a) which was misunderstood, and (b) for which I have apologised many times. On September 18th, I asked you to "Consider the possibility that you may have misunderstood". If you did consider that, you obviously decided to disregard the possibility. The context of the word "amateurish" was within the proposition: *IF* the developers had not read the D style guide *THEN* that would have been amateurish. Since we have now established that you guys did read the style-guide, then clearly I didn't call you amateurish. Now, granted, I did say "petty". That, I admit. But even there, you're misreading the context. At the time, I was a newbie in this group. I didn't know you (or anyone), and I was only talking about a first impression. I'm really, really sorry that my first impression of Tango offended you, but if I were in your shoes, I'd be thinking "Hmm... why does Tango give people that first impression?", and perhaps giving some thought to presentation, rather than hammering newbies, and then holding the post against them forever. And for the record: I apologise. Again.You do realize, I hope, that ... perhaps some of your posts warrant moderation also?Yes, of course. I don't have any problem with that whatsoever! I never intend to offend, but if, on occasion, my words might be taken the wrong way then /of course/ they should be moderated. Same with anyone else. So, are we good now? I mean, I want to be able to say things like "It's not in my nature to speculate without evidence" without being criticised. Can I do that now? I ask because I believe that to be true, even if you don't, so I really don't see why I shouldn't be allowed to say that. Sure - there may have been occasions when I haven't lived up to my own standards - that's just being human - but I still have those standards. I /am/ a skeptic, and I feel I should be allowed to say that. So ... is that OK with you now? May I proceed to post in peace? And can we, at long last, put the post that upset you behind us?
Mar 20 2008
== Quote from Janice Caron (caron800 googlemail.com)'s article ...Yes, of course. I don't have any problem with that whatsoever! I never intend to offend, but if, on occasion, my words might be taken the wrong way then /of course/ they should be moderated. Same with anyone else. So, are we good now?I was hoping that this conversation had paused (I figured it had actually stopped) because the issue had been resolved. (If there's still a problem, I don't know if more words will solve it.)
Mar 20 2008
Janice Caron Wrote about Kris I assume its Kris Bell , here is what he wrote about himself in his book,well--- shared book KRIS BELL is a Scottish pirate and wannabe musician, part-time photographer, avid traveler, open source advocate, miscreant techie dweeb, and a principal Tango contributor. He enjoys swimming, cycling, sailing, and occasional hikes, and recently took up rock climbing. Previously, he dabbled in a bit of car racing and skydiving, and once took a flying-trapeze course (which served only to cement his vocation of choice). He currently lives in California, though he hails from the Scottish west coast and has a dodgy set of bagpipes to remind him of home. Kris has a varied background in engineering and architecture, spanning application servers to RAD tool sets, embedded operating systems to graphics engines, workflow to high-performance clustering and failover substrata. Some commercial systems he has designed/built include enterprise and Inter-net application platforms, factory-automation systems, carrier-grade middleware,immersive-environment simulation, and crazy interactive clothing. In a different age, he would probably have been a steam-locomotive engineer, a swashbuckling Jolly Roger, or a funky bell-ringer. Similar origin to me the Highlander bit . That about says it all doesn't it? However remember when you write a book on a subject you are then that expert (previously a big drip) and its hard not to assume that expert above everyone else air. Like teachers they get used to Lording it over kids and have a lot of trouble generally talking to adults. Some teachers take courses to teach themselves not to fall into this trap. I once wrote a book about Landrovers and a fellow asked me whats my clain to fame and I said of course "I wrote a book about Landrovers" . Hmm he said those British cars are all a load of shit!. Sort of took the wind out of the sails. Ignore it Janice -say what you feel !
Mar 20 2008
Reply to Bill,Is it really true? Is there a group of folks who really want D1 to be frozen?I'd be open to some changesI myself would like to see D1 get all new features that won't break existing source code.but I wouldn't go that far. I think that D1 should at a minimum be highly conservative about adding features. Only feature that have proven very useful in D2 and have become very stable (and are non breaking) and possibly with the restriction that they can be used from older D1 code with little or no updating (cancer const is out)
Mar 06 2008
BCS wrote:Reply to Bill,To pipe in, I am a commercial developer using D1, (project size ~100k) and some non-breaking but enhancing changes to D1 would be very welcome. I believe I still have a kingdom up for grabs for my personal wishlist: opIndexConcat opIndexConcatAssign +friends Returning static arrays from functions. !in (as sugar for (!(a in b)). Ok, this is just a nicety. Still... :) ) Is there even any remote possibility of a D1.1? (Which would not require any changes or break any existing D1 code, but provides some .1 enhancements?).Is it really true? Is there a group of folks who really want D1 to be frozen?I'd be open to some changesI myself would like to see D1 get all new features that won't break existing source code.but I wouldn't go that far. I think that D1 should at a minimum be highly conservative about adding features. Only feature that have proven very useful in D2 and have become very stable (and are non breaking) and possibly with the restriction that they can be used from older D1 code with little or no updating (cancer const is out)
Mar 07 2008
Same here. stable = non breaking not stable = will probably be broken So whatever people might think about the stability of D2, Walter should never be discouraged to break it(s specs). I thus welcome every single new non breaking feature in D1.
Mar 06 2008
Bill Baxter wrote:Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment. Now I know a lot of people were asking for D to become more stable pre D1 days, but is this really what you wanted?I appreciate the fact that D1 is stable. But it seems a bit too "stable" (as in not moving) to me, somehow. AFAIK, there are still a lot of long-standing bugs around, the toolchain is still kind of immature and/or outdated. I understand that Walter as a single person can't possibly reimplement parts of the toolchain while maintaining the compilers, but then again, what about delegation? The D community has shown to be a bunch of pretty (very) knowledgable people. A little delegation here and there would get Walter some time to work on new features and the community some opportunity to properly polish D1 with all its tools. Another thing I'm eager for is a reimplementation of the D1 reference compiler in D1 (DMD D1). This would be a huge step forward for D, besides from Walter actually using D. The toolchain still feels somewhat like a prototype to me.. (Out of interest: how hard would it be to plug a D frontend to the current DMD backend? Would it even be possible?)
Mar 06 2008
Walter Bright:People who do work in large corporations managing extremely large codebases with legions of programmers working on them have made this abundantly clear to me.You have to be really careful about adding features supported by such "evidence". Dynamic languages show that often such people are wrong, or they bark at the wrong tree, or there are alternative ways (totally different ones, that they can't even think about, like test driven development in a dynamically typed language) to solve similar problems. What they say are ways to solve problems in languages like C++ and Java, but experience shows that totally different ways can be invented, in different languages, to avoid some of those problems. (I am for the backporting of some features of 2.x to 1.x, because I don't like the const system of 2.x, and I'm not going to use it (for now), but I understand that it may lead to too much work for D developers). Bye, bearophile
Mar 07 2008
bearophile wrote:Walter Bright:I agree that one has to be careful about what evidence one pays attention to. I'm not convinced about the evidence of dynamic languages, however, as I don't believe dynamic languages are used for very large programs. The reigning kings of large scale apps are C++ and Java. C++ has const, and there is continuing pressure to add some form of const to Java.People who do work in large corporations managing extremely large codebases with legions of programmers working on them have made this abundantly clear to me.You have to be really careful about adding features supported by such "evidence". Dynamic languages show that often such people are wrong, or they bark at the wrong tree, or there are alternative ways (totally different ones, that they can't even think about, like test driven development in a dynamically typed language) to solve similar problems. What they say are ways to solve problems in languages like C++ and Java, but experience shows that totally different ways can be invented, in different languages, to avoid some of those problems.(I am for the backporting of some features of 2.x to 1.x, because I don't like the const system of 2.x, and I'm not going to use it (for now), but I understand that it may lead to too much work for D developers). Bye, bearophile
Mar 07 2008
On Fri, 07 Mar 2008 11:44:36 -0800, Walter Bright wrote:The reigning kings of large scale apps are C++ and Java.I work with the banking industry and COBOL holds its head up high in that world. -- Derek Parnell Melbourne, Australia skype: derek.j.parnell
Mar 07 2008
Derek Parnell wrote:On Fri, 07 Mar 2008 11:44:36 -0800, Walter Bright wrote:And has it const? --bbThe reigning kings of large scale apps are C++ and Java.I work with the banking industry and COBOL holds its head up high in that world.
Mar 07 2008
On Sat, 08 Mar 2008 06:30:50 +0900, Bill Baxter wrote:Derek Parnell wrote:ROFLMAO -- Derek Parnell Melbourne, Australia skype: derek.j.parnellI work with the banking industry and COBOL holds its head up high in that world.And has it const?
Mar 07 2008
Derek Parnell wrote:On Sat, 08 Mar 2008 06:30:50 +0900, Bill Baxter wrote:No I take it? Still it's not necessarily a useful datapoint since it was designed long before "const" existed. But it is still updated, right? I remember the company I was working for losing a sale to some big customer who decided to go with some fancy tarted up Object COBOL thing. Ooh yeh yeh this is the one http://www.microfocus.com/products/more/ObjectCOBOLDeveloperSuite/index.asp. MicroFocus. Wow, haven't heard that name in a long time. Anyway, they added object orientation to Cobol, but not const? That tells you something. conflicting things in my googling. Somethign about readonly objects, but no const/readonly for parameters to functions? --bbDerek Parnell wrote:ROFLMAOI work with the banking industry and COBOL holds its head up high in that world.And has it const?
Mar 07 2008
Bill Baxter wrote:conflicting things in my googling. Somethign about readonly objects, but no const/readonly for parameters to functions? --bbconst: compile-time constant. readonly: you can assign it exactly once, and (IIRC) only field assignment or in a constructor. You can modify it after, though.
Mar 07 2008
And I just checked -- neither const nor readonly are valid outside class/struct field declarations.
Mar 07 2008
Bill Baxter wrote:conflicting things in my googling. Somethign about readonly objects, but no const/readonly for parameters to functions? --bbThe "const" keyword is only for value types. The "readonly" keyword can only be applied to (the reference of) instance variables. No const parameters and no const methods. Const parameters are faked with read-only wrappers like List<T>.AsReadOnly(). for const in Java. -- Julio César Carrascal Urquijo http://jcesar.artelogico.com/
Mar 07 2008
"Bill Baxter" <dnewsgroup billbaxter.com> wrote in message news:fqq8ps$g0r$1 digitalmars.com...Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment. Now I know a lot of people were asking for D to become more stable pre D1 days, but is this really what you wanted? I had initially assumed that the freeze on D1 was at least as much due to time constraints on Walter as it was due to a desire for stability. But in a recent message Walter said that wasn't the case. He said that backporting things from D2 to D1 was pretty trivial. So really then, it to comes down to Walter believing that the D community wants D1 to be feature frozen. Is it really true? Is there a group of folks who really want D1 to be frozen?IMO it's not so much a case of wanting D1 to be frozen but wanting D1 to become more polished I.E. instead of trying to backport new language features, we should try and move towards some kind of consensus regarding standard libraries. Once D1 doesn't appear to have EXPERIMENTAL written all over it then backporting non-breaking features might be viable.I myself would like to see D1 get all new features that won't break existing source code. Things like: * New string literals - q{a=b} D-token string syntax, - delimited strings, q"(...)" - heredocs, q"EOF... * IFTI that works even if you specify one parameter, * Enhanced is expression - is ( Type Identifier : TypeSpecialization , TemplateParameterList ) - is ( Type Identifier == TypeSpecialization , TemplateParameterList ) * foreach(i; 0..10) syntax (ForeachRangeLiteral) * Overload sets I'm all with the sentiment that D1 code that compiles today should compile tomorrow. That kind of stability is great. But if it's not a big time commitment for Walter (which he says it's not), I see no good reason to keep new backwards-compatible features out of D1. I've heard other folks saying they want this from D1 too, but what I haven't heard is a great swell of active D developers saying that new features would be a detriment to their work. --bb, (who has now written and/or ported about 200,000 lines of D according to a quick check with 'wc')
Mar 07 2008
Bill Baxter wrote:Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment. Now I know a lot of people were asking for D to become more stable pre D1 days, but is this really what you wanted? I had initially assumed that the freeze on D1 was at least as much due to time constraints on Walter as it was due to a desire for stability. But in a recent message Walter said that wasn't the case. He said that backporting things from D2 to D1 was pretty trivial. So really then, it to comes down to Walter believing that the D community wants D1 to be feature frozen. Is it really true? Is there a group of folks who really want D1 to be frozen? I myself would like to see D1 get all new features that won't break existing source code. Things like: * New string literals - q{a=b} D-token string syntax, - delimited strings, q"(...)" - heredocs, q"EOF... * IFTI that works even if you specify one parameter, * Enhanced is expression - is ( Type Identifier : TypeSpecialization , TemplateParameterList ) - is ( Type Identifier == TypeSpecialization , TemplateParameterList ) * foreach(i; 0..10) syntax (ForeachRangeLiteral) * Overload sets I'm all with the sentiment that D1 code that compiles today should compile tomorrow. That kind of stability is great. But if it's not a big time commitment for Walter (which he says it's not), I see no good reason to keep new backwards-compatible features out of D1. I've heard other folks saying they want this from D1 too, but what I haven't heard is a great swell of active D developers saying that new features would be a detriment to their work.I disagree that new features in D2 should be backported. I am a newbie to D and what I think D1 needs is for any bugs to be fixed and for the documentation to be improved in that it needs to be more expansive so that end users understand how to use the language. Right now the docs are still very sparse and not easy to understand. Essentially D1 needs to be made as solid as possible for end users. Keeping it in flux is not a good way to attract people to D. One always needs a release of a language that people can use with confidence. When D2 is finally finished, it needs to be treated the same. Fix bugs and update the documentation to be better, so it can be used more easily and understood. Have all new features beyond it go in a new version. Endlessly making changes to a language for each and every release is not, repeat not, a good way to get people to use that language and its libraries in a serious way in order to write modules and applications.
Mar 07 2008
If all the changes are non breaking ones and if it doesn't take any significant time to port them, why then are people still against it? Why does everybody keep pointing out that other things need fixing. That is irrelevant, if porting the extra feature to D1 won't take any time. I would applaud any feature coming to the stable D1 branch. Everybody should be warned that D2 might break at any release, but D1 can safely be used and when lucky it will even be improved without breaking older D1 code (its like giving away presents).I disagree that new features in D2 should be backported. I am a newbie to D and what I think D1 needs is for any bugs to be fixed and for the documentation to be improved in that it needs to be more expansive so that end users understand how to use the language. Right now the docs are still very sparse and not easy to understand. Essentially D1 needs to be made as solid as possible for end users. Keeping it in flux is not a good way to attract people to D. One always needs a release of a language that people can use with confidence. When D2 is finally finished, it needs to be treated the same. Fix bugs and update the documentation to be better, so it can be used more easily and understood. Have all new features beyond it go in a new version. Endlessly making changes to a language for each and every release is not, repeat not, a good way to get people to use that language and its libraries in a serious way in order to write modules and applications.
Mar 07 2008
Saaa pisze:If all the changes are non breaking ones and if it doesn't take any significant time to port them, why then are people still against it? Why does everybody keep pointing out that other things need fixing. That is irrelevant, if porting the extra feature to D1 won't take any time. I would applaud any feature coming to the stable D1 branch. Everybody should be warned that D2 might break at any release, but D1 can safely be used and when lucky it will even be improved without breaking older D1 code (its like giving away presents).I see two important problems with backporting new features from D 2.0 into D 1.0 branch: 1. Porting bigger chunks of code can introduce new bugs into 1.0 branch. Please note that 2.0 is not tested as well as 1.0, so it is more than probable that it will happen. Also it is possible that some of new features can interact with other features (old or new ones) so it will make porting a headache: you will always have to think what should be ported to make the whole thing working in 1.0. 2. Semantics of new features in D 2.0 branch can change until 3.0 branch will be crated. It basically means that, when new features will be continuously ported to D 1.0, then 1.0 branch will no more be stable. You will not be able to create any program in D 1.0 (using new features) and be sure that it won't break in future, because this features can be changed later. In my opinion there is not much sense in porting 2.0 compiler features into 1.0 branch. Also creating branch 1.5 does not make much sense for me. If I would like to use all new features of D, I would just use 2.0 branch. That said, I really appreciate effort of porting Phobos 2.0 into 1.0 (std2 project in dsource). Some of new features of Phobos 2.0 are really useful, and Phobos 1.0 badly lacks them. Best Regards Marcin Kuszczak (aarti_pl)
Mar 07 2008
"Aarti_pl" <aarti interia.pl> wrote in message news:fqrsbq$186c$1 digitalmars.com...Saaa pisze:A few new bugs would not bug me that much, as long as the older code won't be effected. About the headache: If it is a headache, Walter leave it as it is. I'm only pro giving D1 new features if it won't effect the current release speed, which was the assumtion in the first post.If all the changes are non breaking ones and if it doesn't take any significant time to port them, why then are people still against it? Why does everybody keep pointing out that other things need fixing. That is irrelevant, if porting the extra feature to D1 won't take any time. I would applaud any feature coming to the stable D1 branch. Everybody should be warned that D2 might break at any release, but D1 can safely be used and when lucky it will even be improved without breaking older D1 code (its like giving away presents).I see two important problems with backporting new features from D 2.0 into D 1.0 branch: 1. Porting bigger chunks of code can introduce new bugs into 1.0 branch. Please note that 2.0 is not tested as well as 1.0, so it is more than probable that it will happen. Also it is possible that some of new features can interact with other features (old or new ones) so it will make porting a headache: you will always have to think what should be ported to make the whole thing working in 1.0.2. Semantics of new features in D 2.0 branch can change until 3.0 branch will be crated. It basically means that, when new features will be continuously ported to D 1.0, then 1.0 branch will no more be stable. You will not be able to create any program in D 1.0 (using new features) and be sure that it won't break in future, because this features can be changed later.This does not apply. No unstable feature must be allowed to be ported to D1 as it is given that D1 is stable, meaning no new feature may break older code.In my opinion there is not much sense in porting 2.0 compiler features into 1.0 branch. Also creating branch 1.5 does not make much sense for me. If I would like to use all new features of D, I would just use 2.0 branch. That said, I really appreciate effort of porting Phobos 2.0 into 1.0 (std2 project in dsource). Some of new features of Phobos 2.0 are really useful, and Phobos 1.0 badly lacks them.Making yet another branch is crazy yes. What you say about phobos applies to D as well and if the two points you made were invalid you would agree that extra features are nice presents to get ;)Best Regards Marcin Kuszczak (aarti_pl)
Mar 07 2008
Saaa wrote:"Aarti_pl" <aarti interia.pl> wrote in message news:fqrsbq$186c$1 digitalmars.com...D2 is unstable, therefore by definition ANY new feature added to it is also unstable so shouldn't be ported to stable D1. The only guarantee of a given D2 feature's stability is when the entire D2 branch is locked off and stable and the D3 has begun. Cherry-picking features based on their perceived stability at a given time is dangerous.2. Semantics of new features in D 2.0 branch can change until 3.0 branch will be crated. It basically means that, when new features will be continuously ported to D 1.0, then 1.0 branch will no more be stable. You will not be able to create any program in D 1.0 (using new features) and be sure that it won't break in future, because this features can be changed later.This does not apply. No unstable feature must be allowed to be ported to D1 as it is given that D1 is stable, meaning no new feature may break older code.
Mar 07 2008
Brian Hay wrote:Saaa wrote:By that definition D2 will never be stable because it has D2 features which are unstable. Unstable features become stable features over time. We may disagree on the timing, but, for instance, I doubt there are any serious bugs lurking in D2's implementation of delimited strings (q"(foo)" syntax). --bb"Aarti_pl" <aarti interia.pl> wrote in message news:fqrsbq$186c$1 digitalmars.com...D2 is unstable, therefore by definition ANY new feature added to it is also unstable so shouldn't be ported to stable D1. The only guarantee of a given D2 feature's stability is when the entire D2 branch is locked off and stable and the D3 has begun. Cherry-picking features based on their perceived stability at a given time is dangerous.2. Semantics of new features in D 2.0 branch can change until 3.0 branch will be crated. It basically means that, when new features will be continuously ported to D 1.0, then 1.0 branch will no more be stable. You will not be able to create any program in D 1.0 (using new features) and be sure that it won't break in future, because this features can be changed later.This does not apply. No unstable feature must be allowed to be ported to D1 as it is given that D1 is stable, meaning no new feature may break older code.
Mar 07 2008
Bill Baxter wrote:Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment.I'm not opposed to having D1 get back-ported features (provided, of course, that they are backward compatible). However, I'm concerned about the workload on Walter. If he spends too much time on D1, D2 won't get the attention it deserves.
Mar 07 2008
== Quote from Bill Baxter (dnewsgroup billbaxter.com)'s articleIs it really true? Is there a group of folks who really want D1 to be frozen? I myself would like to see D1 get all new features that won't break existing source code.I think there is some use in having a D1 release in terms of having a predictable feature set for code releases, but at the moment I'm barred from D2 by the const features, while I'd like to use everything else. Another issue at the moment is GDC support however, and that's a more substantial one in my mind. Is there a D2 version of GDC yet? Sean
Mar 07 2008
Sean Kelly wrote:== Quote from Bill Baxter (dnewsgroup billbaxter.com)'s articleThere is code for D2 checked into the GDC repo. I don't know how well it works. But there has not been a release of a 2.x GDC compiler, no. Post from Dave announcing it was 9/24/2007: digitalmars.com D.gnu:2904 --bbIs it really true? Is there a group of folks who really want D1 to be frozen? I myself would like to see D1 get all new features that won't break existing source code.I think there is some use in having a D1 release in terms of having a predictable feature set for code releases, but at the moment I'm barred from D2 by the const features, while I'd like to use everything else. Another issue at the moment is GDC support however, and that's a more substantial one in my mind. Is there a D2 version of GDC yet? Sean
Mar 07 2008
Bill Baxter wrote:To use the D1 version of GDC, one configures it with: ./gcc/d/setup-gcc.sh --d-language-version=1 To instead use the D2 version, one configures it with: ./gcc/d/setup-gcc.sh --d-language-version=2 The D1 language files are in d directories "dmd" and "phobos", while the new D2 language is in the "dmd2" and "phobos2" dirs. Support for D 2.0 was added to GDC in revision 160 (Sep, 2007) But there haven't been any GDC updates in a few months now... I haven't used it myself yet, just tried DMD 2.x a few times. (wxD and most samples should be compiling reasonably with D2) Will probably update my GDC packages with a "gdc2" variant, that will build the D2 language (while "gdc" would be D1) --andersAnother issue at the moment is GDC support however, and that's a more substantial one in my mind. Is there a D2 version of GDC yet?There is code for D2 checked into the GDC repo. I don't know how well it works. But there has not been a release of a 2.x GDC compiler, no.
Mar 07 2008
Sean Kelly wrote:but at the moment I'm barred from D2 by the const features,What exactly is barring you?
Mar 07 2008
Sean Kelly wrote:Good question, because people (who I think know more about D than me) saying this is barring me.but at the moment I'm barred from D2 by the const features,What exactly is barring you?
Mar 07 2008
== Quote from Walter Bright (newshound1 digitalmars.com)'s articleSean Kelly wrote:The busywork required to adapt Tango to work with D2. That being mostly the need to add "in" qualifiers to the proper function declarations in tango.stdc and below, as well as tango.sys.win32. So I'm not really blocked by anything but my own laziness, I suppose. It's a big job and I don't have the time for it at the moment. Seanbut at the moment I'm barred from D2 by the const features,What exactly is barring you?
Mar 07 2008
Sean Kelly wrote:== Quote from Walter Bright (newshound1 digitalmars.com)'s articleFair enough. I haven't myself gotten const put everywhere it should be in Phobos :)Sean Kelly wrote:The busywork required to adapt Tango to work with D2. That being mostly the need to add "in" qualifiers to the proper function declarations in tango.stdc and below, as well as tango.sys.win32. So I'm not really blocked by anything but my own laziness, I suppose. It's a big job and I don't have the time for it at the moment.but at the moment I'm barred from D2 by the const features,What exactly is barring you?
Mar 07 2008
On Fri, 07 Mar 2008 12:39:03 -0800, Walter Bright wrote:I haven't myself gotten const put everywhere it should be in Phobos :)I can confirm that! I have these little workarounds in my code to cope with an inconsistent Phobos. -- Derek Parnell Melbourne, Australia skype: derek.j.parnell
Mar 07 2008
Walter Bright Wrote:Sean Kelly wrote:The semantics of const are quite different between D1 and D2== Quote from Walter Bright (newshound1 digitalmars.com)'s articleFair enough. I haven't myself gotten const put everywhere it should be in Phobos :)Sean Kelly wrote:The busywork required to adapt Tango to work with D2. That being mostly the need to add "in" qualifiers to the proper function declarations in tango.stdc and below, as well as tango.sys.win32. So I'm not really blocked by anything but my own laziness, I suppose. It's a big job and I don't have the time for it at the moment.but at the moment I'm barred from D2 by the const features,What exactly is barring you?
Mar 07 2008
Sean Kelly wrote:== Quote from Walter Bright (newshound1 digitalmars.com)'s articleIs that all? If you give me access I'll guarantee at least 10 hours of my time to add/test that stuff over the next 2-4 days. I'd request at least some instruction/guidance on how to conform to Tango style and testing requirements.Sean Kelly wrote:The busywork required to adapt Tango to work with D2. That being mostly the need to add "in" qualifiers to the proper function declarations in tango.stdc and below, as well as tango.sys.win32. So I'm not really blocked by anything but my own laziness, I suppose. It's a big job and I don't have the time for it at the moment. Seanbut at the moment I'm barred from D2 by the const features,What exactly is barring you?
Mar 07 2008
"Walter Bright" wroteSean Kelly wrote:I helped to do an exploratory 'port' of Tango to D2 (version 2.007 I believe). The rationale is, D2 is getting all these new features, but everyone who uses Tango is not testing them. I don't know the statistics, but I would assume that a fair number of people who have good skills that would be useful to help QA D2 are using Tango (including myself), and therefore not using D2. My fear was that D2 would be blessed, and when the Tango developers went to port it, would find that some design decision made it impossible to do something. So during the port, I found several critical issues that made it difficult to port. I worked around some of them, and some have been fixed, but here are the outstanding issues that prevented a true finished port: http://d.puremagic.com/issues/show_bug.cgi?id=1644 http://d.puremagic.com/issues/show_bug.cgi?id=1645 http://d.puremagic.com/issues/show_bug.cgi?id=1680 http://d.puremagic.com/issues/show_bug.cgi?id=1654 The last is really one of these 'design' issues that prevents a true port. Although Tango could be redesigned to fit within the const design of D2, I'd rather have D2 be modified to allow the design of Tango (and phobos) to work. Oh, and as always, it would be nice if tail-const class references were possible :) Not sure if you're working on that or not. But that's really not a blocker for porting Tango. -Stevebut at the moment I'm barred from D2 by the const features,What exactly is barring you?
Mar 10 2008
Bill Baxter wrote:Currently as we all know, D1 gets no new features, and D2 is a crazy rocketship that could change direction at any moment. Now I know a lot of people were asking for D to become more stable pre D1 days, but is this really what you wanted? I had initially assumed that the freeze on D1 was at least as much due to time constraints on Walter as it was due to a desire for stability. But in a recent message Walter said that wasn't the case. He said that backporting things from D2 to D1 was pretty trivial. So really then, it to comes down to Walter believing that the D community wants D1 to be feature frozen. Is it really true? Is there a group of folks who really want D1 to be frozen? I myself would like to see D1 get all new features that won't break existing source code. Things like: * New string literals - q{a=b} D-token string syntax, - delimited strings, q"(...)" - heredocs, q"EOF... * IFTI that works even if you specify one parameter, * Enhanced is expression - is ( Type Identifier : TypeSpecialization , TemplateParameterList ) - is ( Type Identifier == TypeSpecialization , TemplateParameterList ) * foreach(i; 0..10) syntax (ForeachRangeLiteral) * Overload sets I'm all with the sentiment that D1 code that compiles today should compile tomorrow. That kind of stability is great. But if it's not a big time commitment for Walter (which he says it's not), I see no good reason to keep new backwards-compatible features out of D1. I've heard other folks saying they want this from D1 too, but what I haven't heard is a great swell of active D developers saying that new features would be a detriment to their work. --bb, (who has now written and/or ported about 200,000 lines of D according to a quick check with 'wc')I want D1 to be frozen, yes. ~ Clay
Mar 07 2008