Re: [OT] My C++ talk at GoingNative 2013

2013-09-13 Thread Jacob Carlborg

On 2013-09-10 14:54, Olivier Grant wrote:

First of all, I very much enjoyed the talk. It was as interesting as it
was entertaining.


Yes, I enjoyed it as well.


I do have a question regarding the talk's section on devirtualization.
As a language that imposes virtual methods for classes, how well does D
play when it comes to devirtualization? And on a side note, does D have
a different way of implementing virtual methods than most C++ compilers do?


In D it seems that currently the preferred way to compile a project is 
to compile all the source at once using RDMD or similar. Isn't that a 
great opportunity for full program analysis to do devirtualization?


--
/Jacob Carlborg


Re: DUB 0.9.17/0.9.18 have been released + now on code.dlang.org

2013-09-13 Thread Mathias Lang
Same here with chromium on a win7 64.


2013/9/13 growler growler...@gmail.com

 On Friday, 13 September 2013 at 00:56:27 UTC, Craig Dillabaugh wrote:

 On Thursday, 12 September 2013 at 21:30:38 UTC, Craig Dillabaugh
 wrote:

 On Thursday, 12 September 2013 at 21:06:22 UTC, Kapps wrote:

 On Thursday, 12 September 2013 at 18:01:43 UTC, Craig Dillabaugh wrote:


 Currently any attempt to access the precompiled binaries, eg:

 http://code.dlang.org/files/**dub-0.9.18-linux-x86_64.tar.gzhttp://code.dlang.org/files/dub-0.9.18-linux-x86_64.tar.gz

 returns

 500 - Internal Server Error.

 Internal error information:
 object.Exception@../../../opt/**vibe/source/vibe/inet/message.**
 d(352):
 Enforcement failed
 
 ./dub-registry(pure @safe bool
 std.exception.enforce!(bool).**enforce(bool, lazy const(char)[],
 immutable(char)[], ulong)+0x6b) [0x5e31ab]
 ./dub-registry(void
 vibe.inet.message.**InetHeaderMap.remove(**immutable(char)[])+0x182)
 [0x744dfa]
 ./dub-registry(void
 vibe.http.fileserver.sendFile(**vibe.http.server.**HTTPServerRequest,
 ...


 Try a different browser. I had this issue when using curl / wget, but
 it worked with Firefox.


 Failed with Firefox, Opera, and Chromium.  Maybe it is something
 with my PC, will try again from another PC.


 Same problem with Opera/Chrome from my home PC (Windows 7).  My
 previous attempts were from my Linux machine at the office where
 I tried Firefox/Opera/Chromium.

 I am the only one experiencing this?

 Craig


 I'm getting this also on a windows PC from a Chrome browser.




Re: [OT] My C++ talk at GoingNative 2013

2013-09-13 Thread deadalnix
On Friday, 13 September 2013 at 06:24:26 UTC, Jacob Carlborg 
wrote:

On 2013-09-10 14:54, Olivier Grant wrote:
First of all, I very much enjoyed the talk. It was as 
interesting as it

was entertaining.


Yes, I enjoyed it as well.

I do have a question regarding the talk's section on 
devirtualization.
As a language that imposes virtual methods for classes, how 
well does D
play when it comes to devirtualization? And on a side note, 
does D have
a different way of implementing virtual methods than most C++ 
compilers do?


In D it seems that currently the preferred way to compile a 
project is to compile all the source at once using RDMD or 
similar. Isn't that a great opportunity for full program 
analysis to do devirtualization?


No because export is ill defined. But it definitively should.


Re: [OT] My C++ talk at GoingNative 2013

2013-09-13 Thread deadalnix
On Wednesday, 11 September 2013 at 05:27:35 UTC, Olivier Pisano 
wrote:
On Monday, 9 September 2013 at 16:43:54 UTC, Andrei 
Alexandrescu wrote:

http://www.reddit.com/r/programming/comments/1m1izv/goingnative_2013_writing_quick_code_in_c_quickly/

Andrei


This talks are amazing. I learned a lot. Thank you all guys for 
your dedication and pedagogy.


BTW, I really liked your face during the 'Ask us anything' 
panel, when STL talked about Garbage Collection!




There is 2 ask us anything. Can you tell us which one and 
approximately when ?


Re: DUB 0.9.17/0.9.18 have been released + now on code.dlang.org

2013-09-13 Thread Sönke Ludwig
Sorry for that. It was introduced by my workaround for the GZIP issue. 
Works again now. I'll look into a proper fix today.


Am 13.09.2013 08:41, schrieb Mathias Lang:

Same here with chromium on a win7 64.


2013/9/13 growler growler...@gmail.com mailto:growler...@gmail.com

On Friday, 13 September 2013 at 00:56:27 UTC, Craig Dillabaugh wrote:

On Thursday, 12 September 2013 at 21:30:38 UTC, Craig Dillabaugh
wrote:

On Thursday, 12 September 2013 at 21:06:22 UTC, Kapps wrote:

On Thursday, 12 September 2013 at 18:01:43 UTC, Craig
Dillabaugh wrote:


Currently any attempt to access the precompiled
binaries, eg:

http://code.dlang.org/files/__dub-0.9.18-linux-x86_64.tar.gz
http://code.dlang.org/files/dub-0.9.18-linux-x86_64.tar.gz

returns

500 - Internal Server Error.

Internal error information:

object.Exception@../../../opt/__vibe/source/vibe/inet/message.__d(352):
Enforcement failed

./dub-registry(pure @safe bool
std.exception.enforce!(bool).__enforce(bool, lazy
const(char)[],
immutable(char)[], ulong)+0x6b) [0x5e31ab]
./dub-registry(void

vibe.inet.message.__InetHeaderMap.remove(__immutable(char)[])+0x182)
[0x744dfa]
./dub-registry(void

vibe.http.fileserver.sendFile(__vibe.http.server.__HTTPServerRequest,
...


Try a different browser. I had this issue when using
curl / wget, but it worked with Firefox.


Failed with Firefox, Opera, and Chromium.  Maybe it is something
with my PC, will try again from another PC.


Same problem with Opera/Chrome from my home PC (Windows 7).  My
previous attempts were from my Linux machine at the office where
I tried Firefox/Opera/Chromium.

I am the only one experiencing this?

Craig


I'm getting this also on a windows PC from a Chrome browser.






Re: [OT] My C++ talk at GoingNative 2013

2013-09-13 Thread Mathias LANG
I do have a question regarding the talk's section on 
devirtualization.
As a language that imposes virtual methods for classes, how 
well does D
play when it comes to devirtualization? And on a side note, 
does D have
a different way of implementing virtual methods than most C++ 
compilers do?


In D it seems that currently the preferred way to compile a 
project is to compile all the source at once using RDMD or 
similar. Isn't that a great opportunity for full program 
analysis to do devirtualization?



It may be a trend, but I hope it will never become D's official
approach, because it doesn't scale. This would left out all the
people that use the object-file based approach (and related
tools, like Makefiles), which is dominant in the Linux world, and
is required in some cases (limited hardware, distributed
compiling, or simply huge projects).


Re: Updates to D graph library

2013-09-13 Thread ilya-stromberg
On Thursday, 12 September 2013 at 20:11:30 UTC, Joseph Rushton 
Wakeling wrote:

Hello all,

Today I pushed a number of major (and breaking) changes to the 
master repository of the D graph library.  I've provided a 
brief summary on my blog, which also describes how to revise 
any programs to work with the new code:

http://braingam.es/2013/09/d-graph-library-updates/

I hope that these changes don't unduly inconvenience anyone 
currently using the library.  My own take was that it's worth 
it in terms of moving to a generic design and offering some new 
higher-performance graph data structures, which I'll be 
describing in more detail some time soon.


Feedback on the new code is welcome.  I would also like to 
offer thanks to all the nice people on D.learn who contributed 
useful ideas that helped with this update :-)


Thanks  best wishes,

-- Joe


Do you have any plans to change license from GPLv3 to something 
more liberal like Boost, MIT or BSD? Without this it's impossible 
to use your library for commercial purposes.


Re: Updates to D graph library

2013-09-13 Thread Joseph Rushton Wakeling
On Friday, 13 September 2013 at 07:49:49 UTC, ilya-stromberg 
wrote:
Do you have any plans to change license from GPLv3 to something 
more liberal like Boost, MIT or BSD? Without this it's 
impossible to use your library for commercial purposes.


The licence is GPLv3+ because the code is closely influenced by 
igraph, which is GPLv3-licensed. It's not like there's 
copy-pasting, but it's not clean-room either, so offering a 
permissive licence might put users in an invidious situation if 
the igraph authors chose to make an issue of it. Unlikely, but 
better safe than sorry.


If anyone wants to use it in a commercial application the best 
thing probably to let me know and I can discuss with the igraph 
authors. I will probably do so anyway once the library is more 
feature-complete, less out of concern for commercial apps than in 
order not to be incompatible with other free licenses.


Re: Updates to D graph library

2013-09-13 Thread ilya-stromberg
On Friday, 13 September 2013 at 08:20:38 UTC, Joseph Rushton 
Wakeling wrote:
On Friday, 13 September 2013 at 07:49:49 UTC, ilya-stromberg 
wrote:
Do you have any plans to change license from GPLv3 to 
something more liberal like Boost, MIT or BSD? Without this 
it's impossible to use your library for commercial purposes.


The licence is GPLv3+ because the code is closely influenced by 
igraph, which is GPLv3-licensed. It's not like there's 
copy-pasting, but it's not clean-room either, so offering a 
permissive licence might put users in an invidious situation if 
the igraph authors chose to make an issue of it. Unlikely, but 
better safe than sorry.


If anyone wants to use it in a commercial application the best 
thing probably to let me know and I can discuss with the igraph 
authors. I will probably do so anyway once the library is more 
feature-complete, less out of concern for commercial apps than 
in order not to be incompatible with other free licenses.


I see. You can use Boost Graph Library (BGL) as a initial point. 
It's under Boost license that allows commercial usage.

http://www.boost.org/doc/libs/1_54_0/libs/graph/doc/index.html

Also, it would be nice to have graph library in Phobos in a 
future, and in that case module must be under Boost license.


But yes, you can try to contact igraph authors - maybe they let 
you change the license.


Re: Updates to D graph library

2013-09-13 Thread Joseph Rushton Wakeling
On Friday, 13 September 2013 at 08:45:45 UTC, ilya-stromberg 
wrote:
I see. You can use Boost Graph Library (BGL) as a initial 
point. It's under Boost license that allows commercial usage.

http://www.boost.org/doc/libs/1_54_0/libs/graph/doc/index.html


I'm aware of the BGL, but I didn't find it a very nice design.  I 
was also influenced by the fact that among colleagues who work 
with the various graph libraries, none of them seem to favour it 
-- whereas igraph seems both popular and high-performing (I 
believe it can scale to larger data size than any other solution 
out there).  But of course I may revisit that in future.


Also, it would be nice to have graph library in Phobos in a 
future, and in that case module must be under Boost license.


Understood, although I never particularly saw Dgraph as being a 
Phobos candidate, it feels a bit too specialized.  My impression 
is that graph libraries tend in practice to sprawl out into 
massive constructions, rather too extended for something like a 
standard library.


But if the core functionality is something people are interested 
in for Phobos, then again, I'm happy to open up the licensing 
discussion.  I'm sure that the igraph authors would be supportive.


Re: DUB 0.9.17/0.9.18 have been released + now on code.dlang.org

2013-09-13 Thread Craig Dillabaugh

On Friday, 13 September 2013 at 07:30:36 UTC, Sönke Ludwig wrote:
Sorry for that. It was introduced by my workaround for the GZIP 
issue. Works again now. I'll look into a proper fix today.


Am 13.09.2013 08:41, schrieb Mathias Lang:

Same here with chromium on a win7 64.


2013/9/13 growler growler...@gmail.com 
mailto:growler...@gmail.com


   On Friday, 13 September 2013 at 00:56:27 UTC, Craig 
Dillabaugh wrote:


   On Thursday, 12 September 2013 at 21:30:38 UTC, Craig 
Dillabaugh

   wrote:

   On Thursday, 12 September 2013 at 21:06:22 UTC, 
Kapps wrote:


   On Thursday, 12 September 2013 at 18:01:43 UTC, 
Craig

   Dillabaugh wrote:


   Currently any attempt to access the 
precompiled

   binaries, eg:

   
http://code.dlang.org/files/__dub-0.9.18-linux-x86_64.tar.gz
   
http://code.dlang.org/files/dub-0.9.18-linux-x86_64.tar.gz


   returns

   500 - Internal Server Error.

   Internal error information:
   
object.Exception@../../../opt/__vibe/source/vibe/inet/message.__d(352):

   Enforcement failed
   
   ./dub-registry(pure @safe bool
   
std.exception.enforce!(bool).__enforce(bool, lazy

   const(char)[],
   immutable(char)[], ulong)+0x6b) [0x5e31ab]
   ./dub-registry(void
   
vibe.inet.message.__InetHeaderMap.remove(__immutable(char)[])+0x182)

   [0x744dfa]
   ./dub-registry(void
   
vibe.http.fileserver.sendFile(__vibe.http.server.__HTTPServerRequest,

   ...


   Try a different browser. I had this issue when 
using

   curl / wget, but it worked with Firefox.


   Failed with Firefox, Opera, and Chromium.  Maybe it 
is something

   with my PC, will try again from another PC.


   Same problem with Opera/Chrome from my home PC (Windows 
7).  My
   previous attempts were from my Linux machine at the 
office where

   I tried Firefox/Opera/Chromium.

   I am the only one experiencing this?

   Craig


   I'm getting this also on a windows PC from a Chrome browser.


Thanks.  Works for me now.


Re: VisualD now on github.com/d-programming-language

2013-09-13 Thread Andrej Mitrovic
On 9/13/13, Rainer Schuetze r.sagita...@gmx.de wrote:
 I have converted the documentation to DDoc. Here's the result:
 http://rainers.github.io/visuald/visuald/StartPage.html

I'm not sure if I mentioned this before, but I have to comment on the
following section:

```
Library search path not passed to linker

Even though Visual D allows to set a library search path, this does
not work with the default installation of DMD. Optlink, the linker
used by DMD, only accepts the path in the LIB environment variable..
```

Doesn't the -L+ switch work for you? I've documented it here:
http://wiki.dlang.org/Compiling_and_linking_with_DMD_on_Windows#Passing_search_directories_for_static_library_files_to_Optlink


Re: VisualD now on github.com/d-programming-language

2013-09-13 Thread Andrej Mitrovic
On 9/13/13, Rainer Schuetze r.sagita...@gmx.de wrote:
 I have converted the documentation to DDoc. Here's the result:
 http://rainers.github.io/visuald/visuald/StartPage.html

Looks sweet! Btw, I suggest making that picture in the lower-right
clickable so you can zoom in to get the full resolution picture.


Re: VisualD now on github.com/d-programming-language

2013-09-13 Thread Walter Bright

On 9/13/2013 1:01 PM, Rainer Schuetze wrote:

I have converted the documentation to DDoc. Here's the result:
http://rainers.github.io/visuald/visuald/StartPage.html



Very nice!


Re: VisualD now on github.com/d-programming-language

2013-09-13 Thread Rainer Schuetze



On 13.09.2013 22:31, Andrej Mitrovic wrote:

On 9/13/13, Rainer Schuetze r.sagita...@gmx.de wrote:

I have converted the documentation to DDoc. Here's the result:
http://rainers.github.io/visuald/visuald/StartPage.html


I'm not sure if I mentioned this before, but I have to comment on the
following section:

```
Library search path not passed to linker

Even though Visual D allows to set a library search path, this does
not work with the default installation of DMD. Optlink, the linker
used by DMD, only accepts the path in the LIB environment variable..
```

Doesn't the -L+ switch work for you? I've documented it here:
http://wiki.dlang.org/Compiling_and_linking_with_DMD_on_Windows#Passing_search_directories_for_static_library_files_to_Optlink



-L+libpath\ does not work if you also want to pass resource or def file. 
-L always appends the arguments to the end of the command line, but the 
library paths must be added before the ',' that separates libraries and 
resource file.


Actually, that paragraph is out of date, because Visual D can now call 
optlink separately and will do this if you have specified additional 
library paths.