April 13, 2012
On Friday, 13 April 2012 at 05:54:26 UTC, Walter Bright wrote:
> Another big pile of bug fixes. More contributors than ever!
>
> http://www.digitalmars.com/d/1.0/changelog.html
> http://ftp.digitalmars.com/dmd.1.074.zip
>
> http://www.digitalmars.com/d/2.0/changelog.html
> https://github.com/downloads/D-Programming-Language/dmd/dmd.2.059.zip
>
> Note that the changelogs on dlang.org haven't been updated yet. Hope to get that done soon.

Please also make a tag on the Github tools repo so I can update the Arch package.
April 13, 2012
On 4/13/12, Walter Bright <newshound2@digitalmars.com> wrote:
> Another big pile of bug fixes. More contributors than ever! http://www.digitalmars.com/d/2.0/changelog.html

Damn. One could spend a good hour or so reading the bug fixes. Awesome. Does anyone have a comparison to the previous release? E.g. how many bugs were fixed vs newly opened.
April 13, 2012
On 13-04-2012 18:47, Adam D. Ruppe wrote:
> "Strive to make to­Hash, toString, opE­quals and opCmp func­tions pure,
> nothrow, const and @safe. Soon, this will be­come a re­quire­ment."
>
> man, that's a lot of decorations.
>
>
> This kind of thing makes me thing we should have opposites:
> impure, maythrow, mutable, and @system. And virtual, while
> I'm at it.
>
> Then it might be a lil easier to just go
>
> module lots.of.decorations;
> pure:
> const:
> @safe:
> nothrow:
>
>
> and undecorate as needed. We seem to be moving in this
> kind of direction.

I agree wholeheartedly...

-- 
- Alex
April 13, 2012
"Adam D. Ruppe" <destructionator@gmail.com> wrote in message news:oznqhjdcwecwmjmycide@forum.dlang.org...
> "Strive to make to­Hash, toString, opE­quals and opCmp func­tions pure, nothrow, const and @safe. Soon, this will be­come a re­quire­ment."
>
> man, that's a lot of decorations.
>

Must be time for a party!

>
> This kind of thing makes me thing we should have opposites: impure, maythrow, mutable, and @system. And virtual, while I'm at it.
>

My bikeshed is painted:
!pure
!nothrow
!const

> Then it might be a lil easier to just go
>
> module lots.of.decorations;
> pure:
> const:
> @safe:
> nothrow:
>
>
> and undecorate as needed. We seem to be moving in this
> kind of direction.

I like it.


April 13, 2012
On 13/04/2012 22:10, Nick Sabalausky wrote:
> !nothrow

nonothrow. May as well drop nothrow and use !throw if we're doing that!


-- 
Robert
http://octarineparrot.com/
April 13, 2012
On 4/14/12, Robert Clipsham <robert@octarineparrot.com> wrote:
> On 13/04/2012 22:10, Nick Sabalausky wrote:
>> !nothrow
>
> nonothrow. May as well drop nothrow and use !throw if we're doing that!

Might as well rename it to something else. It's called "nothrow", but it can actually throw a Throwable, but not an Exception. Quite an odd naming if you ask me.
April 13, 2012
On 13/04/2012 23:30, Andrej Mitrovic wrote:
> On 4/14/12, Robert Clipsham<robert@octarineparrot.com>  wrote:
>> On 13/04/2012 22:10, Nick Sabalausky wrote:
>>> !nothrow
>>
>> nonothrow. May as well drop nothrow and use !throw if we're doing that!
>
> Might as well rename it to something else. It's called "nothrow", but
> it can actually throw a Throwable, but not an Exception. Quite an odd
> naming if you ask me.

It can't throw a Throwable, just an error! Maybe we should introduce a maybe keyword!

void myFunc() pure @maybe !throw @maybe !const;

Maybe @maybe needs to be negateable too...

void myFunc() !@maybe pure @maybe !throw @maybe !const;

-- 
Robert
http://octarineparrot.com/
April 13, 2012
On 4/14/12, Robert Clipsham <robert@octarineparrot.com> wrote:
> It can't throw a Throwable

Well now I'm confused. According to TDPL p307:

"nothrow promises that the function won't throw an Exception. The function is still allowed to throw the graver Throwable class."

And yet this is an error:

nothrow void foo() {
    throw new Throwable("");
}
void main() { }

test.d(6): Error: object.Throwable is thrown but not caught
test.d(4): Error: function test.foo 'foo' is nothrow yet may throw

So who is the outlier here?
April 13, 2012
On 14-04-2012 01:49, Andrej Mitrovic wrote:
> On 4/14/12, Robert Clipsham<robert@octarineparrot.com>  wrote:
>> It can't throw a Throwable
>
> Well now I'm confused. According to TDPL p307:
>
> "nothrow promises that the function won't throw an Exception. The
> function is still allowed to throw the graver Throwable class."
>
> And yet this is an error:
>
> nothrow void foo() {
>      throw new Throwable("");
> }
> void main() { }
>
> test.d(6): Error: object.Throwable is thrown but not caught
> test.d(4): Error: function test.foo 'foo' is nothrow yet may throw
>
> So who is the outlier here?

That sounds like an error in TDPL. AFAIK nothrow means "may only throw Error".

-- 
- Alex
April 14, 2012
On 4/12/2012 10:53 PM, Walter Bright wrote:
> Another big pile of bug fixes. More contributors than ever!
>
> http://www.digitalmars.com/d/1.0/changelog.html
> http://ftp.digitalmars.com/dmd.1.074.zip
>
> http://www.digitalmars.com/d/2.0/changelog.html
> https://github.com/downloads/D-Programming-Language/dmd/dmd.2.059.zip
>
> Note that the changelogs on dlang.org haven't been updated yet. Hope to get that
> done soon.

Changelogs, deb files, and

http://dlang.org/download.html

are all updated now.