www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - dmd 1.051 and 2.036 release

reply Walter Bright <newshound1 digitalmars.com> writes:
Sorry, still no Mac OSX 10.6

http://www.digitalmars.com/d/1.0/changelog.html
http://ftp.digitalmars.com/dmd.1.051.zip


http://www.digitalmars.com/d/2.0/changelog.html
http://ftp.digitalmars.com/dmd.2.036.zip

Many thanks to the numerous people who contributed to this update.
Nov 05 2009
next sibling parent Walter Bright <newshound1 digitalmars.com> writes:
Walter Bright wrote:
 http://www.digitalmars.com/d/2.0/changelog.html
 http://ftp.digitalmars.com/dmd.2.036.zip

If you have functions like this: void foo(T[3] array) and want them to behave the same way, add the ref keyword: void foo(ref T[3] array) as static arrays are no longer passed by reference, unless explicitly marked as such. Functions can also return static arrays now.
Nov 05 2009
prev sibling next sibling parent reply Bill Baxter <wbaxter gmail.com> writes:
On Thu, Nov 5, 2009 at 11:20 PM, Walter Bright
<newshound1 digitalmars.com> wrote:
 Sorry, still no Mac OSX 10.6

 http://www.digitalmars.com/d/1.0/changelog.html
 http://ftp.digitalmars.com/dmd.1.051.zip


 http://www.digitalmars.com/d/2.0/changelog.html
 http://ftp.digitalmars.com/dmd.2.036.zip

 Many thanks to the numerous people who contributed to this update.

I don't see it mentioned anywhere that -X doesn't crash anymore. Was there a bug number for that? Also, I thought -X was going to include ddoc comments for elements, but it doesn't look like it does. Adding it would be good for the simple IDEs it's supposed to support, so that they can pop up the ddoc description along with the suggested completions. (VisualAssist does this for instance) It would also allow people to build external documentation generators by parsing the JSON file instead of the D source. --bb
Nov 06 2009
parent Walter Bright <newshound1 digitalmars.com> writes:
Bill Baxter wrote:
 Also, I thought -X was going to include ddoc comments for elements,
 but it doesn't look like it does.

It does if you also throw -D. I know, that shouldn't be necessary.
Nov 06 2009
prev sibling next sibling parent bearophile <bearophileHUGS lycos.com> writes:
I hope LDC will be able to use this version.

---------------

This function:

auto bar() {
    float[4] a = 0.0;
    return a;
}

May use 4 writes instead of a call to __memset32.

---------------

The limit for array size is large enough:

import std.stdio: writeln;
const int N = 86_312;
auto foo3(int[N] a) {
    a[2] = 5;
    return a;
}
void main() {
    int[N] a2;
    writeln(foo3(a2)[0 .. 10]);
}

---------------

This page may explain how static arrays are passed, because they don't work as
C ones now:
http://www.digitalmars.com/d/2.0/abi.html

Regarding the documentation, the page about contract programming:
http://www.digitalmars.com/d/2.0/dbc.html
Points to this page for the Class Invariants:
http://www.digitalmars.com/d/2.0/class.html#Invariant
But there are Struct invariants too, so I think it may be better to talk about
Class Invariants and Struct invariants in the dbc.html page.

---------------

It may be positive to have a warning that warns where large fixed-sized arrays
are passed by value, to avoid performance problems.

Bye,
bearophile
Nov 06 2009
prev sibling next sibling parent Leandro Lucarella <llucax gmail.com> writes:
bearophile, el  6 de noviembre a las 05:48 me escribiste:
 I hope LDC will be able to use this version.
 
 ---------------
 
 This function:
 
 auto bar() {
     float[4] a = 0.0;
     return a;
 }
 
 May use 4 writes instead of a call to __memset32.
 
 ---------------
 
 The limit for array size is large enough:
 
 import std.stdio: writeln;
 const int N = 86_312;
 auto foo3(int[N] a) {
     a[2] = 5;
     return a;
 }
 void main() {
     int[N] a2;
     writeln(foo3(a2)[0 .. 10]);
 }
 
 ---------------
 
 This page may explain how static arrays are passed, because they don't work as
C ones now:
 http://www.digitalmars.com/d/2.0/abi.html
 
 Regarding the documentation, the page about contract programming:
 http://www.digitalmars.com/d/2.0/dbc.html
 Points to this page for the Class Invariants:
 http://www.digitalmars.com/d/2.0/class.html#Invariant
 But there are Struct invariants too, so I think it may be better to talk about
Class Invariants and Struct invariants in the dbc.html page.
 
 ---------------
 
 It may be positive to have a warning that warns where large fixed-sized arrays
are passed by value, to avoid performance problems.

Fill bugzilla reports so it doesn't get lost! -- Leandro Lucarella (AKA luca) http://llucax.com.ar/ ---------------------------------------------------------------------- GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145 104C 949E BFB6 5F5A 8D05) ---------------------------------------------------------------------- MP: Cómo está, estimado Bellini? B: Muy bien, Mario, astrologando. MP: Qué tengo? B: Un balcón-terraza. MP: No, en mi mano, Bellini... B: Un secarropas! MP: No, escuche bien, eh. Tiene B: El circo de Moscú. números. MP: No Bellini. Toma medidas. B: Un ministro. MP: No Bellini, eh! Algunas son B: Una modelo, Mario! de plástico y otras de madera. MP: No, Bellini, no y no! -- El Gran Bellini (Mario Podestá con una regla)
Nov 06 2009
prev sibling next sibling parent reply Tom S <h3r3tic remove.mat.uni.torun.pl> writes:
Walter Bright wrote:
 Sorry, still no Mac OSX 10.6
 
 http://www.digitalmars.com/d/1.0/changelog.html
 http://ftp.digitalmars.com/dmd.1.051.zip
 
 
 http://www.digitalmars.com/d/2.0/changelog.html
 http://ftp.digitalmars.com/dmd.2.036.zip
 
 Many thanks to the numerous people who contributed to this update.

Thank you! This may be the most important release to numerous DMD users on Windows. You have no idea how much hair we've collectively lost over OPTLINK (we could probably make a side business manufacturing wigs). I can't believe 424 is fixed :D That's greatly appreciated! -- Tomasz Stachowiak http://h3.team0xf.com/ h3/h3r3tic on #D freenode
Nov 06 2009
parent Walter Bright <newshound1 digitalmars.com> writes:
Tom S wrote:
 Thank you! This may be the most important release to numerous DMD users 
 on Windows. You have no idea how much hair we've collectively lost over 
 OPTLINK (we could probably make a side business manufacturing wigs). I 
 can't believe 424 is fixed :D That's greatly appreciated!

You're welcome. I'm just sorry it took so long.
Nov 06 2009
prev sibling next sibling parent reply Ali Cehreli <acehreli yahoo.com> writes:
Great news!

The link in the following line on the releases list is broken again (points to
2.035):

   "Download latest D 2.0 alpha  D compiler for Win32 and x86 linux"

I propose removing that line altogether as the latest compiler is obviously the
one with the highest version number. :)

Ali
Nov 06 2009
parent Robert Clipsham <robert octarineparrot.com> writes:
Ali Cehreli wrote:
 Great news!
 
 The link in the following line on the releases list is broken again (points to
2.035):
 
    "Download latest D 2.0 alpha  D compiler for Win32 and x86 linux"
 
 I propose removing that line altogether as the latest compiler is obviously
the one with the highest version number. :)
 
 Ali
 

Or maybe having it pointing to a page which redirects to the latest download (that way you can have multiple links pointing to the latest download without having to update all of them, just where the redirect page redirects to).
Nov 06 2009
prev sibling next sibling parent Moritz Warning <moritzwarning web.de> writes:
On Thu, 05 Nov 2009 23:20:06 -0800, Walter Bright wrote:

 Sorry, still no Mac OSX 10.6
 
 http://www.digitalmars.com/d/1.0/changelog.html
 http://ftp.digitalmars.com/dmd.1.051.zip
 
 
 http://www.digitalmars.com/d/2.0/changelog.html
 http://ftp.digitalmars.com/dmd.2.036.zip
 
 Many thanks to the numerous people who contributed to this update.

Thanks for this release. Finally something I can update to.
Nov 07 2009
prev sibling parent reply Pablo Ripolles <in-call gmx.net> writes:
Walter Bright Wrote:

 http://www.digitalmars.com/d/2.0/changelog.html
 http://ftp.digitalmars.com/dmd.2.036.zip

I've noticed that the dmd2/src/druntime/doc/ folder that was on 035 is now gone! is that an expected deletion? Walter, thanks again!
Nov 08 2009
parent Walter Bright <newshound1 digitalmars.com> writes:
Pablo Ripolles wrote:
 Walter Bright Wrote:
 
 http://www.digitalmars.com/d/2.0/changelog.html 
 http://ftp.digitalmars.com/dmd.2.036.zip

I've noticed that the dmd2/src/druntime/doc/ folder that was on 035 is now gone! is that an expected deletion?

Hmm, probably not! But it can easily be generated with druntime/win32.mak
 
 Walter, thanks again!

You're welcome!
Nov 08 2009