www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - dmd 1.073 and 2.058 release

reply Walter Bright <newshound2 digitalmars.com> writes:
Anyone care to count up the number of bug fixes here?

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

http://www.digitalmars.com/d/2.0/changelog.html
https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
Feb 14 2012
next sibling parent Jonathan M Davis <jmdavisProg gmx.com> writes:
On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?
 
 http://www.digitalmars.com/d/1.0/changelog.html
 http://ftp.digitalmars.com/dmd.1.073.zip
 
 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
You forgot to merge in the changelogs for druntime and Phobos. - Jonathan M Davis
Feb 14 2012
prev sibling next sibling parent reply Jonathan M Davis <jmdavisProg gmx.com> writes:
On Tuesday, February 14, 2012 20:52:23 Jonathan M Davis wrote:
 On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?
 
 http://www.digitalmars.com/d/1.0/changelog.html
 http://ftp.digitalmars.com/dmd.1.073.zip
 
 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
You forgot to merge in the changelogs for druntime and Phobos.
And the first bug listed as fixed - 314 - was reopened. - Jonathan M Davis
Feb 14 2012
parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 2/14/2012 8:54 PM, Jonathan M Davis wrote:
 On Tuesday, February 14, 2012 20:52:23 Jonathan M Davis wrote:
 On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
You forgot to merge in the changelogs for druntime and Phobos.
And the first bug listed as fixed - 314 - was reopened.
That was removed from the changelog, it's just that the dlang.org hasn't been synced yet.
Feb 14 2012
next sibling parent reply Jonathan M Davis <jmdavisProg gmx.com> writes:
On Tuesday, February 14, 2012 21:08:03 Walter Bright wrote:
 On 2/14/2012 8:54 PM, Jonathan M Davis wrote:
 On Tuesday, February 14, 2012 20:52:23 Jonathan M Davis wrote:
 On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?
 
 http://www.digitalmars.com/d/1.0/changelog.html
 http://ftp.digitalmars.com/dmd.1.073.zip
 
 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
You forgot to merge in the changelogs for druntime and Phobos.
And the first bug listed as fixed - 314 - was reopened.
That was removed from the changelog, it's just that the dlang.org hasn't been synced yet.
Odd. I wouldn't have expected any of it to end up on dlang until the final release, in which case you shouldn't have issues with the changelog not being up-to-date but still including 2.058. Was it being updated while the betas were out? - Jonathan M Davis
Feb 14 2012
parent Walter Bright <newshound2 digitalmars.com> writes:
On 2/14/2012 9:19 PM, Jonathan M Davis wrote:
 Odd. I wouldn't have expected any of it to end up on dlang until the final
 release, in which case you shouldn't have issues with the changelog not being
 up-to-date but still including 2.058. Was it being updated while the betas
 were out?
It does say "upcoming" on dlang.org, so it is the beta changelog.
Feb 14 2012
prev sibling parent Leandro Lucarella <luca llucax.com.ar> writes:
Walter Bright, el 14 de febrero a las 21:08 me escribiste:
 On 2/14/2012 8:54 PM, Jonathan M Davis wrote:
On Tuesday, February 14, 2012 20:52:23 Jonathan M Davis wrote:
On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:
Anyone care to count up the number of bug fixes here?

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

http://www.digitalmars.com/d/2.0/changelog.html
https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
You forgot to merge in the changelogs for druntime and Phobos.
And the first bug listed as fixed - 314 - was reopened.
That was removed from the changelog, it's just that the dlang.org hasn't been synced yet.
D1 changelog have it too. -- Leandro Lucarella (AKA luca) http://llucax.com.ar/ ---------------------------------------------------------------------- GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145 104C 949E BFB6 5F5A 8D05) ---------------------------------------------------------------------- All fathers are intimidating. They're intimidating because they are fathers. Once a man has children, for the rest of his life, his attitude is, "To hell with the world, I can make my own people. I'll eat whatever I want. I'll wear whatever I want, and I'll create whoever I want." -- Jerry Seinfeld
Feb 15 2012
prev sibling next sibling parent Jimmy Cao <jcao219 gmail.com> writes:
2012/2/14 Walter Bright <newshound2 digitalmars.com>

http://www.digitalmars.com/d/**2.0/changelog.html<http://www.digitalmars.com/d/2.0/changelog.html>



Did you forget to mention the new std.net.curl module?
Feb 14 2012
prev sibling next sibling parent Jonathan M Davis <jmdavisProg gmx.com> writes:
On Wednesday, February 15, 2012 00:02:10 Jimmy Cao wrote:
 Did you forget to mention the new std.net.curl module?
No. It's in the changelog. It's just that the website hasn't been updated yet. It currently lists the partial changelog from the beta, not the full changelog. - Jonathan M Davis
Feb 14 2012
prev sibling next sibling parent Jonathan M Davis <jmdavisProg gmx.com> writes:
On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?
 
 http://www.digitalmars.com/d/1.0/changelog.html
 http://ftp.digitalmars.com/dmd.1.073.zip
 
 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
* Allow 1.userproperty syntax Was UFCS added in this release? On what level is it supported? Does it now work with _everything_, or is it just all built-in types? Or is it only integers? Or is it only with properties and not functions and not full UFCS? - Jonathan M Davis
Feb 14 2012
prev sibling next sibling parent Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 2/14/12 10:47 PM, Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
243 bug fixes according to my count. New record. Vote up! http://www.reddit.com/r/programming/comments/pqft5/d_reference_compiler_2058_is_out_15_new_features/ Congratulations to everyone involved! There has never been such momentum in D's history. Andrei
Feb 14 2012
prev sibling next sibling parent Walter Bright <newshound2 digitalmars.com> writes:
On reddit:

http://www.reddit.com/r/programming/comments/pqft5/d_reference_compiler_2058_is_out_15_new_features/
Feb 14 2012
prev sibling next sibling parent reply Bill Baxter <wbaxter gmail.com> writes:
 On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:
 * Allow 1.userproperty syntax
Where is this odd-sounding beast documented? And what is UFCS? --bb
Feb 14 2012
next sibling parent reply Jacob Carlborg <doob me.com> writes:
On 2012-02-15 08:38, Bill Baxter wrote:
     On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:

     * Allow 1.userproperty syntax


 Where is this odd-sounding beast documented?

 And what is UFCS?

 --bb
Uniform Function Call Syntax. Which basically means you can call free functions as they were methods. void foo (int a, int b); foo(1, 2); 1.foo(2); -- /Jacob Carlborg
Feb 15 2012
parent deadalnix <deadalnix gmail.com> writes:
Le 15/02/2012 09:11, Jacob Carlborg a écrit :
 On 2012-02-15 08:38, Bill Baxter wrote:
 On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:

 * Allow 1.userproperty syntax


 Where is this odd-sounding beast documented?

 And what is UFCS?

 --bb
Uniform Function Call Syntax. Which basically means you can call free functions as they were methods. void foo (int a, int b); foo(1, 2); 1.foo(2);
Finally it is in D ! Great ! Awesome !
Feb 15 2012
prev sibling parent Piotr Szturmaj <bncrbme jadamspam.pl> writes:
Bill Baxter wrote:
     On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:

     * Allow 1.userproperty syntax


 Where is this odd-sounding beast documented?

 And what is UFCS?
Ultimate Fighting Championship of Syntaxes <g>
Feb 15 2012
prev sibling next sibling parent Jacob Carlborg <doob me.com> writes:
On 2012-02-15 05:47, Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
That's a huge amount of bug fixes. You guys have outdone yourself again, impressive. -- /Jacob Carlborg
Feb 14 2012
prev sibling next sibling parent Jonathan M Davis <jmdavisProg gmx.com> writes:
On Tuesday, February 14, 2012 23:38:33 Bill Baxter wrote:
 On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:
 * Allow 1.userproperty syntax
Where is this odd-sounding beast documented? And what is UFCS?
Universal Function Call Syntax. The idea is that any function can be called as if it were a member function. The member function call syntax that arrays have is a version of this but isn't general/universal, whereas _universal_ function call syntax would apply to all types. So, stuff like 1.abs() and 5.max(3) become legal. It also means that you can declare functions which take a class or struct as their first parameter and call them as if they were member functions of that class/struct. But it can introduce ambiguities - especially when dealing with structs or classes which can have member functions of their own. So, there's been some debate as to how it should be implemented - or even _if_ it should be implemented, though the basic idea is fairly popular.
From the sound of it, at least property functions with integers can now be 
used with UFCS, since at least that level of UFCS is required to declare properties for built-in types. property auto prop(int value) { ... } auto value = 7.prop; But that's just a guess, asthe changelog obviously isn't very descriptive. So, I have no idea what exactly has been implemented for that one line in the changelog - hence my question. - Jonathan M Davis
Feb 15 2012
prev sibling next sibling parent reply Jacob Carlborg <doob me.com> writes:
On 2012-02-15 05:47, Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
Unfortunately my serialization library Orange doesn't completely work with 2.058. I've already posted about this to the beta mailing list. -- /Jacob Carlborg
Feb 15 2012
parent Jacob Carlborg <doob me.com> writes:
On 2012-02-15 09:50, Jacob Carlborg wrote:
 On 2012-02-15 05:47, Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
Unfortunately my serialization library Orange doesn't completely work with 2.058. I've already posted about this to the beta mailing list.
I finally found the problem. It turned out to be in my code, sorry for the noise. -- /Jacob Carlborg
Feb 16 2012
prev sibling next sibling parent deadalnix <deadalnix gmail.com> writes:
Le 15/02/2012 05:47, Walter Bright a écrit :
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
I quite disapointed to see array.sort fixed instead of deprecated. This method is inferior to std.algorithm.sort, and most of its drawbacks are not fixable. Plus, sorting doesn't belong to the runtime IMO. Great job by the way !
Feb 15 2012
prev sibling next sibling parent reply Andrej Mitrovic <andrej.mitrovich gmail.com> writes:
On 2/15/12, Jonathan M Davis <jmdavisProg gmx.com> wrote:
  property auto prop(int value) { ... }
 auto value = 7.prop;

 So,
 I have no idea what exactly has been implemented for that one line in the
 changelog - hence my question.
That doesn't seem to work. So does anyone know what exactly is implemented?
Feb 15 2012
next sibling parent reply bearophile <bearophileHUGS lycos.com> writes:
Andrej Mitrovic:

 That doesn't seem to work. So does anyone know what exactly is implemented?
I don't know. See: https://github.com/D-Programming-Language/dmd/pull/582 Bye, bearophile
Feb 15 2012
parent reply =?UTF-8?B?QWxpIMOHZWhyZWxp?= <acehreli yahoo.com> writes:
On 02/15/2012 07:49 AM, bearophile wrote:
 Andrej Mitrovic:

 That doesn't seem to work. So does anyone know what exactly is implemented?
I don't know. See: https://github.com/D-Programming-Language/dmd/pull/582 Bye, bearophile
Is UFCS DOA? Here is my experiment: struct S {} property int foo(S) { return 42; } void main() { auto s = S(); s.foo(); // Error: no property 'foo' for type 'S' } Ali
Feb 15 2012
parent reply "Marco Leise" <Marco.Leise gmx.de> writes:
Am 15.02.2012, 23:07 Uhr, schrieb Ali =C3=87ehreli <acehreli yahoo.com>:=


 On 02/15/2012 07:49 AM, bearophile wrote:
 Andrej Mitrovic:

 That doesn't seem to work. So does anyone know what exactly is  =
 implemented?
I don't know. See: https://github.com/D-Programming-Language/dmd/pull/582 Bye, bearophile
Is UFCS DOA? Here is my experiment: struct S {} property int foo(S) { return 42; } void main() { auto s =3D S(); s.foo(); // Error: no property 'foo' for type 'S' } Ali
I'm just repeating what's already been said, but UFCS on classes and = structs has the problem of ambiguities with proper methods of those. If = = 2.058 introduced more UFCS, then it is for literals. Try "123.foo;".
Feb 16 2012
next sibling parent reply simendsjo <simendsjo gmail.com> writes:
On Thu, 16 Feb 2012 14:45:46 +0100, Marco Leise <Marco.Leise gmx.de> wro=
te:

 Am 15.02.2012, 23:07 Uhr, schrieb Ali =C3=87ehreli <acehreli yahoo.com=
:

 On 02/15/2012 07:49 AM, bearophile wrote:
 Andrej Mitrovic:

 That doesn't seem to work. So does anyone know what exactly is  =
 implemented?
I don't know. See: https://github.com/D-Programming-Language/dmd/pull/582 Bye, bearophile
Is UFCS DOA? Here is my experiment: struct S {} property int foo(S) { return 42; } void main() { auto s =3D S(); s.foo(); // Error: no property 'foo' for type 'S' } Ali
I'm just repeating what's already been said, but UFCS on classes and =
 structs has the problem of ambiguities with proper methods of those. I=
f =
 2.058 introduced more UFCS, then it is for literals. Try "123.foo;".
I thought floating point literals should change so 0 is required. No mor= e = .0 or 0. .
Feb 16 2012
parent bearophile <bearophileHUGS lycos.com> writes:
simendsjo:

 I thought floating point literals should change so 0 is required. No more  
 .0 or 0. .
See: http://d.puremagic.com/issues/show_bug.cgi?id=6277 Bye, bearophile
Feb 16 2012
prev sibling parent reply "F i L" <witte2008 gmail.com> writes:
Marco Leise wrote:
 I'm just repeating what's already been said, but UFCS on 
 classes and structs has the problem of ambiguities with proper 
 methods of those. If 2.058 introduced more UFCS, then it is for 
 literals. Try "123.foo;".
"123.foo;" doesn't work.
Feb 16 2012
parent reply "Jonathan M Davis" <jmdavisProg gmx.com> writes:
On Thursday, February 16, 2012 15:27:26 F i L wrote:
 Marco Leise wrote:
 I'm just repeating what's already been said, but UFCS on
 classes and structs has the problem of ambiguities with proper
 methods of those. If 2.058 introduced more UFCS, then it is for
 literals. Try "123.foo;".
"123.foo;" doesn't work.
- Jonathan M Davis
Feb 16 2012
parent Timon Gehr <timon.gehr gmx.ch> writes:
On 02/16/2012 08:05 PM, Jonathan M Davis wrote:
 On Thursday, February 16, 2012 15:27:26 F i L wrote:
 Marco Leise wrote:
 I'm just repeating what's already been said, but UFCS on
 classes and structs has the problem of ambiguities with proper
 methods of those. If 2.058 introduced more UFCS, then it is for
 literals. Try "123.foo;".
"123.foo;" doesn't work.
- Jonathan M Davis
http://msdn.microsoft.com/en-us/library/bb383977.aspx
Feb 16 2012
prev sibling parent reply Timon Gehr <timon.gehr gmx.ch> writes:
On 02/15/2012 01:45 PM, Andrej Mitrovic wrote:
 On 2/15/12, Jonathan M Davis<jmdavisProg gmx.com>  wrote:
  property auto prop(int value) { ... }
 auto value = 7.prop;

 So,
 I have no idea what exactly has been implemented for that one line in the
 changelog - hence my question.
That doesn't seem to work. So does anyone know what exactly is implemented?
Apparently the only thing that is implemented is that float literals now require [0-9] after the decimal point. That means 1.f and 1.Li will be tokenized as [1][.][f] and [1][.][Li].
Feb 15 2012
parent "Jonathan M Davis" <jmdavisProg gmx.com> writes:
On Wednesday, February 15, 2012 23:52:54 Timon Gehr wrote:
 On 02/15/2012 01:45 PM, Andrej Mitrovic wrote:
 On 2/15/12, Jonathan M Davis<jmdavisProg gmx.com> wrote:
  property auto prop(int value) { ... }
 auto value = 7.prop;
 
 So,
 I have no idea what exactly has been implemented for that one line in the
 changelog - hence my question.
That doesn't seem to work. So does anyone know what exactly is implemented?
Apparently the only thing that is implemented is that float literals now require [0-9] after the decimal point. That means 1.f and 1.Li will be tokenized as [1][.][f] and [1][.][Li].
Then it sounds like the changelog is in error (though the floating point literal thing is a very good change in its own right). - Jonathan M Davis
Feb 15 2012
prev sibling next sibling parent reply Piotr Szturmaj <bncrbme jadamspam.pl> writes:
Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
Great! Keep up good work! One note thought: I see that there are some new features borrowed from 2.057 log. Is this on purpose or an oversight?
Feb 15 2012
parent reply Dmitry Olshansky <dmitry.olsh gmail.com> writes:
On 15.02.2012 17:21, Piotr Szturmaj wrote:
 Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
Great! Keep up good work! One note thought: I see that there are some new features borrowed from 2.057 log. Is this on purpose or an oversight?
Nice release! Though I see that the library bugs section is almost identical to 2.057 O_o -- Dmitry Olshansky
Feb 16 2012
parent "Marco Leise" <Marco.Leise gmx.de> writes:
Am 16.02.2012, 10:11 Uhr, schrieb Dmitry Olshansky <dmitry.olsh gmail.com>:

 On 15.02.2012 17:21, Piotr Szturmaj wrote:
 Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
Great! Keep up good work! One note thought: I see that there are some new features borrowed from 2.057 log. Is this on purpose or an oversight?
Nice release! Though I see that the library bugs section is almost identical to 2.057 O_o
Now that you say it ... the Makefile patch, the to!float("INF2") fix. We should run a diff before counting ;)
Feb 16 2012
prev sibling next sibling parent Robert Clipsham <robert octarineparrot.com> writes:
On 15/02/2012 04:47, Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
The following no longer works and is not listed in the changelog: ---- void foo(T...)(T) { } void main() { foo((string, string a){ // Do something }); } ---- It now gives: ---- test.d(1): Error: cannot have parameter of type void test.d(1): Error: variable test.foo!(void).foo._param_0 voids have no value test.d(7): Error: template instance test.foo!(void) error instantiating test.d(7): Error: template test.foo(T...) cannot deduce template function from argument types !()(void) ---- I assume that this is intentional from my following of dmd commits, the breaking change should be listed though. -- Robert http://octarineparrot.com/
Feb 15 2012
prev sibling next sibling parent Robert McGinley <mcginley.robert gmail.com> writes:
More  Andrei Does anyone keep an updated version of "The D Programming =
Language" as changes are made?  I don't know what your publishing =
agreement was like but could you keep the text of the book in say =
github. =20


On Feb 14, 2012, at 11:47 PM, Walter Bright wrote:

 Anyone care to count up the number of bug fixes here?
=20
 http://www.digitalmars.com/d/1.0/changelog.html
 http://ftp.digitalmars.com/dmd.1.073.zip
=20
 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
Feb 15 2012
prev sibling next sibling parent reply Caligo <iteronvexor gmail.com> writes:
On Wed, Feb 15, 2012 at 2:26 AM, Jonathan M Davis <jmdavisProg gmx.com> wrote:
 On Tuesday, February 14, 2012 23:38:33 Bill Baxter wrote:
 On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:
 * Allow 1.userproperty syntax
Where is this odd-sounding beast documented? And what is UFCS?
Universal Function Call Syntax. The idea is that any function can be called as if it were a member function. The member function call syntax that arrays have is a version of this but isn't general/universal, whereas _universal_ function call syntax would apply to all types. So, stuff like 1.abs() and 5.max(3) become legal. It also means that you can declare functions which take a class or struct as their first parameter and call them as if they were member functions of that class/struct. But it can introduce ambiguities - especially when dealing with structs or classes which can have member functions of their own. So, there's been some debate as to how it should be implemented - or even _if_ it should be implemented, though the basic idea is fairly popular. From the sound of it, at least property functions with integers can now be used with UFCS, since at least that level of UFCS is required to declare properties for built-in types. property auto prop(int value) { ... } auto value = 7.prop; But that's just a guess, asthe changelog obviously isn't very descriptive. So, I have no idea what exactly has been implemented for that one line in the changelog - hence my question. - Jonathan M Davis
float x = 1.f; // GIVES ERROR float y = 0.f; // OK what's up with that? Is that a bug?
Feb 15 2012
parent Timon Gehr <timon.gehr gmx.ch> writes:
On 02/16/2012 07:10 AM, Caligo wrote:
 On Wed, Feb 15, 2012 at 2:26 AM, Jonathan M Davis<jmdavisProg gmx.com>  wrote:
 On Tuesday, February 14, 2012 23:38:33 Bill Baxter wrote:
 On Tuesday, February 14, 2012 20:47:27 Walter Bright wrote:
 * Allow 1.userproperty syntax
Where is this odd-sounding beast documented? And what is UFCS?
Universal Function Call Syntax. The idea is that any function can be called as if it were a member function. The member function call syntax that arrays have is a version of this but isn't general/universal, whereas _universal_ function call syntax would apply to all types. So, stuff like 1.abs() and 5.max(3) become legal. It also means that you can declare functions which take a class or struct as their first parameter and call them as if they were member functions of that class/struct. But it can introduce ambiguities - especially when dealing with structs or classes which can have member functions of their own. So, there's been some debate as to how it should be implemented - or even _if_ it should be implemented, though the basic idea is fairly popular. From the sound of it, at least property functions with integers can now be used with UFCS, since at least that level of UFCS is required to declare properties for built-in types. property auto prop(int value) { ... } auto value = 7.prop; But that's just a guess, asthe changelog obviously isn't very descriptive. So, I have no idea what exactly has been implemented for that one line in the changelog - hence my question. - Jonathan M Davis
float x = 1.f; // GIVES ERROR float y = 0.f; // OK what's up with that? Is that a bug?
Yes.
Feb 16 2012
prev sibling next sibling parent kraybourne <stdin kraybourne.com> writes:
On 2/15/12 5:47 AM, Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
Awesome! And dat changelog! Fantastic work! I get the feeling with this release D is taking a new direction?! I like it! This is also one of the few D2 releases where my modest pile of existing code just continues to work. Like, I don't know what to do now, just continue to code? like nothing happened?! Teh humanity! :) Labambda! thanks /krbrn
Feb 16 2012
prev sibling next sibling parent reply "Jonas Drewsen" <jdrewsen nospam.com> writes:
On Wednesday, 15 February 2012 at 04:47:27 UTC, Walter Bright 
wrote:
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
The v2.058 tag in the git repo is missing /Jonas
Feb 16 2012
parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 2/16/2012 1:00 AM, Jonas Drewsen wrote:
 The v2.058 tag in the git repo is missing
git tag shows it's there.
Feb 16 2012
next sibling parent "F i L" <witte2008 gmail.com> writes:
Great work guys! That's a lot of bug fixes.

I was completely excited about UFCS when I read it had been 
implemented, but it
doesn't seem to work. What has it been implemented for exactly?
Feb 16 2012
prev sibling parent "Jonas Drewsen" <jdrewsen nospam.com> writes:
On Thursday, 16 February 2012 at 10:08:31 UTC, Walter Bright 
wrote:
 On 2/16/2012 1:00 AM, Jonas Drewsen wrote:
 The v2.058 tag in the git repo is missing
git tag shows it's there.
A git pull didn't work for some reason. I had to do a "git fetch upstream tag v2.058" to see it. Weird. Thx Jonas
Feb 16 2012
prev sibling next sibling parent reply Jonathan M Davis <jmdavisProg gmx.com> writes:
On Thursday, February 16, 2012 00:10:20 Caligo wrote:
 float x = 1.f;  // GIVES ERROR
 
 float y = 0.f;  // OK
 
 what's up with that?  Is that a bug?
I would think so. - Jonathan M Davis
Feb 16 2012
parent reply Andrea Fontana <advmail katamail.com> writes:
Is it trying to call function  f(int x) on 1 with new universal
syntax? :)

Il giorno gio, 16/02/2012 alle 01.29 -0800, Jonathan M Davis ha scritto:

 On Thursday, February 16, 2012 00:10:20 Caligo wrote:
 float x =3D 1.f;  // GIVES ERROR
=20
 float y =3D 0.f;  // OK
=20
 what's up with that?  Is that a bug?
=20 I would think so. =20 - Jonathan M Davis
Feb 16 2012
parent "Nick Sabalausky" <a a.a> writes:
"Andrea Fontana" <advmail katamail.com> wrote in message 
news:1329390651.2167.3.camel ububox...
Il giorno gio, 16/02/2012 alle 01.29 -0800, Jonathan M Davis ha scritto:
 On Thursday, February 16, 2012 00:10:20 Caligo wrote:
 float x = 1.f;  // GIVES ERROR

 float y = 0.f;  // OK

 what's up with that?  Is that a bug?
I would think so.
Is it trying to call function f(int x) on 1 with new universal syntax? :)
If so, then it *should* be doing the same on 0.f
Feb 16 2012
prev sibling next sibling parent reply "Martin Nowak" <dawg dawgfoto.de> writes:
On Thu, 16 Feb 2012 10:29:55 +0100, Jonathan M Davis <jmdavisProg gmx.com>  
wrote:

 On Thursday, February 16, 2012 00:10:20 Caligo wrote:
 float x = 1.f;  // GIVES ERROR

 float y = 0.f;  // OK

 what's up with that?  Is that a bug?
I would think so. - Jonathan M Davis
Somewhere in the lexer. Numbers starting with 0 have a different control flow because of 0x and 0b.
Feb 16 2012
parent Timon Gehr <timon.gehr gmx.ch> writes:
On 02/16/2012 08:37 PM, Martin Nowak wrote:
 On Thu, 16 Feb 2012 10:29:55 +0100, Jonathan M Davis
 <jmdavisProg gmx.com> wrote:

 On Thursday, February 16, 2012 00:10:20 Caligo wrote:
 float x = 1.f; // GIVES ERROR

 float y = 0.f; // OK

 what's up with that? Is that a bug?
I would think so. - Jonathan M Davis
Somewhere in the lexer. Numbers starting with 0 have a different control flow because of 0x and 0b.
This kind of duplicated control flow seems to be a pervasive problem in DMDs lexer and parser, making hacking on them a nightmare.
Feb 16 2012
prev sibling parent Stephan <spam extrawurst.org> writes:
On 15.02.2012 05:47, Walter Bright wrote:
 Anyone care to count up the number of bug fixes here?

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

 http://www.digitalmars.com/d/2.0/changelog.html
 https://github.com/downloads/D-Programming-Language/dmd/dmd.2.058.zip
std.net.curl documentation is missing
Feb 22 2012