digitalmars.D.announce - DMD 2.006 release
- Walter Bright (5/5) Oct 16 2007 Strings are now invariant. More library overhauls, new library modules.
- Witold Baryluk (16/22) Oct 16 2007 Greate release!
- Bill Baxter (11/39) Oct 16 2007 I think that's ok still. It says the *first* argument only. The first
- Bill Baxter (8/36) Oct 16 2007 Nevermind, you're right. The changelog summary is worded poorly.
- renoX (3/42) Oct 21 2007 Agreed, this is a big regression, I hope that it'll be fixed.
- dominik (1/1) Oct 16 2007 great release! munch and getopt :)
- Dejan Lekic (2/2) Oct 16 2007 This release is proof that Phobos is not dead. :) Great work all of You ...
- Bill Baxter (14/20) Oct 16 2007 Wow. Phobos 2.x is really on the move!
- Lionello Lunesu (3/9) Oct 17 2007 I think those would be useful for any type T. Array properties?
- Carlos Santander (5/11) Oct 16 2007 Maybe I missed something, but does the inclusion of std.variant mean tha...
- Marcin Kuszczak (18/29) Oct 16 2007 s
- Walter Bright (3/5) Oct 16 2007 Yes. If you're using boxer, take a serious look at variant, and see if
- 0ffh (4/6) Oct 16 2007 It's as good as incorporated in Drat! already... =)
- Walter Bright (2/8) Oct 16 2007 Well, std.boxer isn't going to be deleted. It may get moved to etc.boxer...
- Marcin Kuszczak (26/33) Oct 16 2007 There is missing functionality in variant though. I mean converting vari...
- 0ffh (6/6) Oct 16 2007 Wow! Something for Phobos users (like myself), and for those
- Robert Fraser (3/4) Oct 16 2007 Awesome! One of my most-=anticipated features discussed at the conferenc...
- Walter Bright (3/11) Oct 16 2007 You're welcome!
- Stewart Gordon (10/13) Oct 17 2007 Like cleaning up parameter types in std.string and the like.
- Regan Heath (4/16) Oct 17 2007 By moving it from "std." to "etc." so people can still use it if they
-
Stewart Gordon
(10/16)
Oct 17 2007
- charles (6/12) Oct 17 2007 Instead of const and friends, why not make user definable constraints (
Strings are now invariant. More library overhauls, new library modules. These changes exacerbated problems with const/volatile, so next up is overhauling that. http://www.digitalmars.com/d/changelog.html http://ftp.digitalmars.com/dmd.2.006.zip
Oct 16 2007
Dnia Tue, 16 Oct 2007 10:03:26 -0700 Walter Bright <newshound1 digitalmars.com> napisa=B3/a:Strings are now invariant. More library overhauls, new library modules. These changes exacerbated problems with const/volatile, so next up is overhauling that. =20 http://www.digitalmars.com/d/changelog.html http://ftp.digitalmars.com/dmd.2.006.zipGreate release! (And three previous also :D) But what is rational reason for this? "Breaking change: std.stdio.writef can now only accept a format as its first argument." const/invariant problems, performance? Or it was too complicated? I thing that=20 writefln("a=3D%d", a, "b=3D%.3f", b); is more readble than writefln("a=3D%d b=3D%d", a, b); (in some sense) PS. std.* links in changelog are not working. --=20 Witold Baryluk, aleph0
Oct 16 2007
Witold Baryluk wrote:Dnia Tue, 16 Oct 2007 10:03:26 -0700 Walter Bright <newshound1 digitalmars.com> napisa³/a:I think that's ok still. It says the *first* argument only. The first argument is a format string in both of your examples. What you can't do is: writefln(a, " is the value of a"); I think the problem is that the implementation of writef et al can't tell if you're passing it a literal string format or a variable that happens to be a string as the first argument. This doesn't really seem to fix the ambiguity of passing in a string as the first argument, but maybe the idea is to get people out of the habit of passing a variable as the first arg in general? Just a guess though. --bbStrings are now invariant. More library overhauls, new library modules. These changes exacerbated problems with const/volatile, so next up is overhauling that. http://www.digitalmars.com/d/changelog.html http://ftp.digitalmars.com/dmd.2.006.zipGreate release! (And three previous also :D) But what is rational reason for this? "Breaking change: std.stdio.writef can now only accept a format as its first argument." const/invariant problems, performance? Or it was too complicated? I thing that writefln("a=%d", a, "b=%.3f", b); is more readble than writefln("a=%d b=%d", a, b); (in some sense)
Oct 16 2007
Bill Baxter wrote:Witold Baryluk wrote:Nevermind, you're right. The changelog summary is worded poorly. Looking at std.stdio the actual situation is: "writef (and also writefln) only scans its first string argument for format specifiers, but not subsequent string arguments." That is too bad. I always thought the interspersed formats thing was a cool feature of writef/writefln. --bbDnia Tue, 16 Oct 2007 10:03:26 -0700 Walter Bright <newshound1 digitalmars.com> napisa³/a:Strings are now invariant. More library overhauls, new library modules. These changes exacerbated problems with const/volatile, so next up is overhauling that. http://www.digitalmars.com/d/changelog.html http://ftp.digitalmars.com/dmd.2.006.zipGreate release! (And three previous also :D) But what is rational reason for this? "Breaking change: std.stdio.writef can now only accept a format as its first argument." const/invariant problems, performance? Or it was too complicated? I thing that writefln("a=%d", a, "b=%.3f", b); is more readble than writefln("a=%d b=%d", a, b); (in some sense)
Oct 16 2007
Bill Baxter a écrit :Bill Baxter wrote:Agreed, this is a big regression, I hope that it'll be fixed. renoXWitold Baryluk wrote:Nevermind, you're right. The changelog summary is worded poorly. Looking at std.stdio the actual situation is: "writef (and also writefln) only scans its first string argument for format specifiers, but not subsequent string arguments." That is too bad. I always thought the interspersed formats thing was a cool feature of writef/writefln.Dnia Tue, 16 Oct 2007 10:03:26 -0700 Walter Bright <newshound1 digitalmars.com> napisa³/a:Strings are now invariant. More library overhauls, new library modules. These changes exacerbated problems with const/volatile, so next up is overhauling that. http://www.digitalmars.com/d/changelog.html http://ftp.digitalmars.com/dmd.2.006.zipGreate release! (And three previous also :D) But what is rational reason for this? "Breaking change: std.stdio.writef can now only accept a format as its first argument." const/invariant problems, performance? Or it was too complicated? I thing that writefln("a=%d", a, "b=%.3f", b); is more readble than writefln("a=%d b=%d", a, b); (in some sense)--bb
Oct 21 2007
This release is proof that Phobos is not dead. :) Great work all of You guys, and thank You for these wonderfull changes! \o/ Kind regards
Oct 16 2007
Walter Bright wrote:Strings are now invariant. More library overhauls, new library modules. These changes exacerbated problems with const/volatile, so next up is overhauling that. http://www.digitalmars.com/d/changelog.html http://ftp.digitalmars.com/dmd.2.006.zipWow. Phobos 2.x is really on the move! Any chance we could get a std.string.startsWith and std.string.endsWith? They are simple one-liners, but often useful. Here's my D1.x implementation: bool startsWith(string s, string sub) { return (s.length>=sub.length && s[0..sub.length]==sub); } bool endsWith(string s, string sub) { return (s.length>=sub.length && s[$-sub.length..$]==sub); } If there's some subtle bug in the above (zero length strings?), my apologies -- but that's all the more reason they should be in the library! --bb
Oct 16 2007
Bill Baxter wrote:bool startsWith(string s, string sub) { return (s.length>=sub.length && s[0..sub.length]==sub); } bool endsWith(string s, string sub) { return (s.length>=sub.length && s[$-sub.length..$]==sub); }I think those would be useful for any type T. Array properties? L.
Oct 17 2007
Walter Bright escribió:Strings are now invariant. More library overhauls, new library modules. These changes exacerbated problems with const/volatile, so next up is overhauling that. http://www.digitalmars.com/d/changelog.html http://ftp.digitalmars.com/dmd.2.006.zipMaybe I missed something, but does the inclusion of std.variant mean that std.boxer will be deprecated or removed at some point? -- Carlos Santander Bernal
Oct 16 2007
Carlos Santander wrote:Walter Bright escribi=C3=B3:es.Strings are now invariant. More library overhauls, new library modul=sThese changes exacerbated problems with const/volatile, so next up i=thatoverhauling that. =20 http://www.digitalmars.com/d/changelog.html http://ftp.digitalmars.com/dmd.2.006.zip=20 Maybe I missed something, but does the inclusion of std.variant mean =std.boxer will be deprecated or removed at some point? =20It seems so... I found following in std.boxer: WARNING: This module is being phased out. You may want to use std.variant for n= ew code. --=20 Regards Marcin Kuszczak (Aarti_pl) ------------------------------------- Ask me why... I believe in Jesus - http://www.zapytajmnie.com (en/pl) Doost (port of few Boost libraries) - http://www.dsource.org/projects/d= oost/ -------------------------------------
Oct 16 2007
Carlos Santander wrote:Maybe I missed something, but does the inclusion of std.variant mean that std.boxer will be deprecated or removed at some point?Yes. If you're using boxer, take a serious look at variant, and see if that works for you.
Oct 16 2007
Walter Bright wrote:Yes. If you're using boxer, take a serious look at variant, and see if that works for you.It's as good as incorporated in Drat! already... =) BTW news://news.digitalmars.com:119/ff393g$2mqk$1 digitalmars.com ? Regards, Frank
Oct 16 2007
0ffh wrote:Walter Bright wrote:Well, std.boxer isn't going to be deleted. It may get moved to etc.boxer.Yes. If you're using boxer, take a serious look at variant, and see if that works for you.It's as good as incorporated in Drat! already... =) BTW news://news.digitalmars.com:119/ff393g$2mqk$1 digitalmars.com ?
Oct 16 2007
Walter Bright wrote:Carlos Santander wrote:There is missing functionality in variant though. I mean converting variadic function parameters into array of Boxes. It's nice, so it should be retained IMHO. Or do you want to change variadic parameters to functions to something better, so it would not be so usefull? ----- I am also not sure if "variant inside variant" will work with opAssign. I mean situation: Variant a; a =5; Variant b; b=a; What is type of b? Variant or int? I don't see any other chance to make it Variant, than using b.opAssign(a); what is quite ugly, and what worse needs from developer previous decision which types will he store in Variant - if he won't use "Variant inside Variant", so he can use normal assignments; in other case he must consequently use b.opAssign(a) everywhere. It seems that in this case Box was also better, than current implementation. -- Regards Marcin Kuszczak (Aarti_pl) ------------------------------------- Ask me why... I believe in Jesus - http://www.zapytajmnie.com (en/pl) Doost (port of few Boost libraries) - http://www.dsource.org/projects/doost/ -------------------------------------Maybe I missed something, but does the inclusion of std.variant mean that std.boxer will be deprecated or removed at some point?Yes. If you're using boxer, take a serious look at variant, and see if that works for you.
Oct 16 2007
Wow! Something for Phobos users (like myself), and for those who look forward to more interoperability between Phobos and Tango. At least that's how I interpret "Incorporated many of the Tango GC structural differences". D keeps on rollin' ... thanks! =) regards, Frank
Oct 16 2007
Walter Bright Wrote:Implemented Overload Sets for functions and templates.Awesome! One of my most-=anticipated features discussed at the conference! Not a huge change, but that extra icing on the cake that makes D such a pleasure to use. Thanks for the wonderful release!
Oct 16 2007
Robert Fraser wrote:Walter Bright Wrote:Turned out to be easier to implement than I'd thought.Implemented Overload Sets for functions and templates.Awesome! One of my most-=anticipated features discussed at the conference! Not a huge change, but that extra icing on the cake that makes D such a pleasure to use.Thanks for the wonderful release!You're welcome!
Oct 16 2007
"Walter Bright" <newshound1 digitalmars.com> wrote in message news:ff2qro$1un3$1 digitalmars.com...Strings are now invariant. More library overhauls, new library modules. These changes exacerbated problems with const/volatile, so next up is overhauling that.Like cleaning up parameter types in std.string and the like. I've noticed that there's a lot of deprecated Phobos stuff even in the 2.x edition, some of it even deprecated before 1.x. This ought to be cleaned out soon.... Stewart. -- My e-mail address is valid but not my primary mailbox. Please keep replies on the 'group where everybody may benefit.
Oct 17 2007
Stewart Gordon wrote:"Walter Bright" <newshound1 digitalmars.com> wrote in message news:ff2qro$1un3$1 digitalmars.com...By moving it from "std." to "etc." so people can still use it if they really really need to, right? ReganStrings are now invariant. More library overhauls, new library modules. These changes exacerbated problems with const/volatile, so next up is overhauling that.Like cleaning up parameter types in std.string and the like. I've noticed that there's a lot of deprecated Phobos stuff even in the 2.x edition, some of it even deprecated before 1.x. This ought to be cleaned out soon....
Oct 17 2007
"Regan Heath" <regan netmail.co.nz> wrote in message news:ff5fis$29ek$1 digitalmars.com...Stewart Gordon wrote:<snip>Most D 0.x code wouldn't compile without changes under D 2.x. So any project that's worth updating to D 2.x is surely worth updating to Phobos 2.x while at it? Stewart. -- My e-mail address is valid but not my primary mailbox. Please keep replies on the 'group where everybody may benefit.I've noticed that there's a lot of deprecated Phobos stuff even in the 2.x edition, some of it even deprecated before 1.x. This ought to be cleaned out soon....By moving it from "std." to "etc." so people can still use it if they really really need to, right?
Oct 17 2007
Instead of const and friends, why not make user definable constraints ( const could be one of them - for people other than me ), as detailed in scott meyers presentation http://video.google.com/videoplay?docid=-4728145737208991310&q=red+code+green+code&total=173&start=0&num=10&so=0&ty e=search&plindex=0. ? Walter Bright wrote:Strings are now invariant. More library overhauls, new library modules. These changes exacerbated problems with const/volatile, so next up is overhauling that. http://www.digitalmars.com/d/changelog.html http://ftp.digitalmars.com/dmd.2.006.zip
Oct 17 2007