Re: Release D 2.069.0

2015-12-08 Thread Chris Wright via Digitalmars-d-announce
On Tue, 08 Dec 2015 22:07:15 +, deadalnix wrote:

> That's fucking ridiculous.
> 
> I'm sorry, but strong word are warranted on that one. Memory consumption
> have been an issue for a while now. Never freeing and assuming
> everything will be already to win few ms out of a build is the most
> ridiculous choice dmd has done.
> 
> Especially on a 32bits build.
> 
> Will this problem be taken seriously at some point ?

At the time of the C++ to D cutover, DMD did some GC-unsafe things. In 
the interests of expediency, since the compiler isn't a long-running 
process, they chose to disable the GC in the interim.

While at least some of these GC-unsafe behaviors have been excised, there 
is lingering concern that some might remain, so nobody has re-enabled the 
GC. This has been somewhat on the backburner; Windows has typically been 
of secondary concern to D devs, and Linux has 64-bit builds, so address 
space exhaustion hasn't been as problematic there.

Anyway, this is something that's intended to be fixed, and regular 64-bit 
Windows builds are something that should happen. It just requires the dev 
team to have better access to Windows.


Re: Release D 2.069.0

2015-12-08 Thread deadalnix via Digitalmars-d-announce

On Tuesday, 8 December 2015 at 13:14:58 UTC, Márcio Martins wrote:
On Tuesday, 8 December 2015 at 08:39:26 UTC, Jean-Yves 
Vion-Dury wrote:
On Monday, 7 December 2015 at 17:32:05 UTC, Márcio Martins 
wrote:
On Monday, 7 December 2015 at 17:06:48 UTC, Jean-Yves 
Vion-Dury wrote:
On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio 
Martins wrote:

[...]



FYI, I just installed the 2.069 version, and now I'm unable 
to compile some modules, getting the same "Error: out of 
memory". I isolated a tiny one raising the issue, and its 
all about a moderately complex ctRegex expression (see 
below) that seems to brake the compiler. Other modules also 
raise the problem, but they are bigger in term of code lines.


[...]


Windows?


Yes indeed, Windows... is it a problem (the previous version 
was fine with my environment)?


You will need to add the add the LARGEADDRESSAWARE flag to your 
executable manually. It is supposed to be done automatically, 
but it is not working currently, so you will have to do it 
manually... It indeed stopped working since 2.069.0. 
Unfortunately, it is a royal pain in the anus, because you need 
to download the WDK. To save you some pain, if you have Windows 
10, it's WDK doesn't install property, so you best install WDK 
8.1 which works smooth. Perhaps there are some other tools that 
do it, but I am always reluctant to download these sort of 
stuff from untrusted sources.


That's fucking ridiculous.

I'm sorry, but strong word are warranted on that one. Memory 
consumption have been an issue for a while now. Never freeing and 
assuming everything will be already to win few ms out of a build 
is the most ridiculous choice dmd has done.


Especially on a 32bits build.

Will this problem be taken seriously at some point ?




Re: Release D 2.069.0

2015-12-08 Thread Márcio Martins via Digitalmars-d-announce
On Tuesday, 8 December 2015 at 08:39:26 UTC, Jean-Yves Vion-Dury 
wrote:
On Monday, 7 December 2015 at 17:32:05 UTC, Márcio Martins 
wrote:
On Monday, 7 December 2015 at 17:06:48 UTC, Jean-Yves 
Vion-Dury wrote:
On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins 
wrote:

[...]



FYI, I just installed the 2.069 version, and now I'm unable 
to compile some modules, getting the same "Error: out of 
memory". I isolated a tiny one raising the issue, and its all 
about a moderately complex ctRegex expression (see below) 
that seems to brake the compiler. Other modules also raise 
the problem, but they are bigger in term of code lines.


[...]


Windows?


Yes indeed, Windows... is it a problem (the previous version 
was fine with my environment)?


You will need to add the add the LARGEADDRESSAWARE flag to your 
executable manually. It is supposed to be done automatically, but 
it is not working currently, so you will have to do it 
manually... It indeed stopped working since 2.069.0. 
Unfortunately, it is a royal pain in the anus, because you need 
to download the WDK. To save you some pain, if you have Windows 
10, it's WDK doesn't install property, so you best install WDK 
8.1 which works smooth. Perhaps there are some other tools that 
do it, but I am always reluctant to download these sort of stuff 
from untrusted sources.


Re: Release D 2.069.0

2015-12-08 Thread ZombineDev via Digitalmars-d-announce
On Tuesday, 8 December 2015 at 08:39:26 UTC, Jean-Yves Vion-Dury 
wrote:
On Monday, 7 December 2015 at 17:32:05 UTC, Márcio Martins 
wrote:
On Monday, 7 December 2015 at 17:06:48 UTC, Jean-Yves 
Vion-Dury wrote:
On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins 
wrote:

[...]



FYI, I just installed the 2.069 version, and now I'm unable 
to compile some modules, getting the same "Error: out of 
memory". I isolated a tiny one raising the issue, and its all 
about a moderately complex ctRegex expression (see below) 
that seems to brake the compiler. Other modules also raise 
the problem, but they are bigger in term of code lines.


[...]


Windows?


Yes indeed, Windows... is it a problem (the previous version 
was fine with my environment)?


I guess the issue is that the Windows DMD binary is 32-bit and 
supports addressing only 2GB (or 4GB if it's Large Address Space 
aware), whereas on other OSs it's 64-bit by default and doesn't 
have this limitation.


Maybe if you need to keep using Windows your best option is to 
build a 64-bit DMD yourself. I think the easiest way to do this 
on Windows is to use Digger: https://github.com/cybershadow/Digger





Re: Release D 2.069.0

2015-12-08 Thread Jean-Yves Vion-Dury via Digitalmars-d-announce

On Monday, 7 December 2015 at 17:32:05 UTC, Márcio Martins wrote:
On Monday, 7 December 2015 at 17:06:48 UTC, Jean-Yves Vion-Dury 
wrote:
On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins 
wrote:

[...]



FYI, I just installed the 2.069 version, and now I'm unable to 
compile some modules, getting the same "Error: out of memory". 
I isolated a tiny one raising the issue, and its all about a 
moderately complex ctRegex expression (see below) that seems 
to brake the compiler. Other modules also raise the problem, 
but they are bigger in term of code lines.


[...]


Windows?


Yes indeed, Windows... is it a problem (the previous version was 
fine with my environment)?


Re: Release D 2.069.0

2015-12-07 Thread Márcio Martins via Digitalmars-d-announce
On Monday, 7 December 2015 at 17:06:48 UTC, Jean-Yves Vion-Dury 
wrote:
On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins 
wrote:

[...]



FYI, I just installed the 2.069 version, and now I'm unable to 
compile some modules, getting the same "Error: out of memory". 
I isolated a tiny one raising the issue, and its all about a 
moderately complex ctRegex expression (see below) that seems to 
brake the compiler. Other modules also raise the problem, but 
they are bigger in term of code lines.


[...]


Windows?


Re: Release D 2.069.0

2015-12-07 Thread Jean-Yves Vion-Dury via Digitalmars-d-announce
On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins 
wrote:
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak 
wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


See the changelog for more details. 
http://dlang.org/changelog/2.069.0.html


-Martin


Seems like memory usage went up by a significant amount, as I 
can no longer compile our project on my Windows machine.


DMD 2.068.2 uses up to 1100MB of memory during our build and 
succeeds
DMD 2.069 used up to 1600MB of memory before crashing with 
"Error: out of memory"


Are there any plans to release a dmd64.exe?



FYI, I just installed the 2.069 version, and now I'm unable to 
compile some modules, getting the same "Error: out of memory". I 
isolated a tiny one raising the issue, and its all about a 
moderately complex ctRegex expression (see below) that seems to 
brake the compiler. Other modules also raise the problem, but 
they are bigger in term of code lines.


So, at a first glance it looks like a deeper problem that just a 
"higher memory consumption" issue, to me. I'm a bit frustrated, 
this was working so well so far...



auto r=ctRegex!(
`\s*(?:`
~   `(?P#.*)|`
~   
`(?:@prefix\s+(?P\pL+):\s+<(?P[^<>\s]+)>\s*\.\s*)|`
~   
`(?:(_|\pL+):((?:\pL|[\.\-_0-9])*(?:\pL|\d))\s+(\pL+):((?:\pL|[\.\-_0-9])*(?:\pL|\d))\s+`

~ `(?:(?:(_|\pL+):((?:\pL|[\.\-_0-9])*(?:\pL|\d)))|`
~ 
`(?:(?:(?:"{3}(?P.*)"{3})|(?:"(?P.*)"))`

~   `(?:`
~   
`(?:@(?P[A-Za-z]+(?:\-[A-Za-z0-9]+)*))|`
~   
`(?:\^\^(?P\pL+):(?P\w+))`

~   `)?`
~   `)`
~   `)\s*`
~   `\.\s*)`
~`)`
);

Thank you for any help beyond splitting down the regex above (any 
magic memory-oriented option somewhere?) ...


Jean-Yves

PS I would like to take the opportunity to thank all contributors 
for their great work on D...




Re: Release D 2.069.0

2015-11-23 Thread Márcio Martins via Digitalmars-d-announce

On Thursday, 5 November 2015 at 01:08:42 UTC, Martin Nowak wrote:
On Wednesday, 4 November 2015 at 17:52:23 UTC, Dmitry Olshansky 
wrote:
If host machine is x64 bit windows try setting large address 
aware bit on the executable (there are tools to do that IRC), 
would allow it to eat up to ~4 gigs.


We're already doing that since quite a while.
https://github.com/D-Programming-Language/dmd/commit/172b55d22bd4a144d889c3fa8d9279d8e0a0ce1c


Martin, it seems this is not working.
I just had to use editbin manually on my laptop, again.


Re: Release D 2.069.0

2015-11-10 Thread uiop via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


See the changelog for more details. 
http://dlang.org/changelog/2.069.0.html


-Martin


I'd like to put dlang people attention this:

http://forum.dlang.org/post/bxmpvrttbhfuddsym...@forum.dlang.org

It looks like there's been a problem when you compiled phobos 
because the new allocators miss !


Re: Release D 2.069.0

2015-11-09 Thread Dicebot via Digitalmars-d-announce

On Monday, 9 November 2015 at 21:38:13 UTC, Martin Nowak wrote:

On 11/09/2015 07:08 PM, Dicebot wrote:
More common practice is to declare such dependencies as 
optional though.


I made a ticket https://issues.dlang.org/show_bug.cgi?id=15308.
Simply changing
https://github.com/D-Programming-Language/installer/blob/41fb25ce5e5ff2c14728f490ee4579ac49bb989a/linux/dmd_rpm.sh#L266
doesn't work b/c the rpmtool from debian used to build the rpm 
packages

doesn't support Recommends.


Sorry, I don't know a single thing about RPM world thus can't 
really help meaningfully :(


Re: Release D 2.069.0

2015-11-09 Thread Martin Nowak via Digitalmars-d-announce
On 11/09/2015 07:08 PM, Dicebot wrote:
> More common practice is to declare such dependencies as optional though.

I made a ticket https://issues.dlang.org/show_bug.cgi?id=15308.
Simply changing
https://github.com/D-Programming-Language/installer/blob/41fb25ce5e5ff2c14728f490ee4579ac49bb989a/linux/dmd_rpm.sh#L266
doesn't work b/c the rpmtool from debian used to build the rpm packages
doesn't support Recommends.



Re: Release D 2.069.0

2015-11-09 Thread Dicebot via Digitalmars-d-announce

On Monday, 9 November 2015 at 12:58:39 UTC, Dragos Carp wrote:

On Monday, 9 November 2015 at 12:28:09 UTC, FreeSlave wrote:


I tried to install rpm-package on Fedora 20 with rpm -i, but 
it gives me


error: Failed dependencies:
glibc-devel(x86-32) is needed by dmd-2.069.0-0.x86_64
libcurl(x86-32) is needed by dmd-2.069.0-0.x86_64

Why do package depends on 32-bit libraries? Was it always like 
that? I never installed dmd on Fedora before.


Yes, it was always like that.
To be able to generate 32-bit binaries, and dmd-64 can do that, 
these 32-bit packages are required.


More common practice is to declare such dependencies as optional 
though.


Re: Release D 2.069.0

2015-11-09 Thread Dicebot via Digitalmars-d-announce
On Monday, 9 November 2015 at 10:39:21 UTC, Thomas Brix Larsen 
wrote:

Opt-in stats from Arch:

https://www.archlinux.de/?page=PackageStatistics

go 19.45%
rust5.92%
gcc-go  5.61%
dmd 2.56%
ldc 1.72%
gdc 1.60%


This matches my personal understanding of current "market" share 
for those.


Re: Release D 2.069.0

2015-11-09 Thread Dragos Carp via Digitalmars-d-announce

On Monday, 9 November 2015 at 12:28:09 UTC, FreeSlave wrote:


I tried to install rpm-package on Fedora 20 with rpm -i, but it 
gives me


error: Failed dependencies:
glibc-devel(x86-32) is needed by dmd-2.069.0-0.x86_64
libcurl(x86-32) is needed by dmd-2.069.0-0.x86_64

Why do package depends on 32-bit libraries? Was it always like 
that? I never installed dmd on Fedora before.


Yes, it was always like that.
To be able to generate 32-bit binaries, and dmd-64 can do that, 
these 32-bit packages are required.


Re: Release D 2.069.0

2015-11-09 Thread FreeSlave via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


See the changelog for more details. 
http://dlang.org/changelog/2.069.0.html


-Martin


I tried to install rpm-package on Fedora 20 with rpm -i, but it 
gives me


error: Failed dependencies:
glibc-devel(x86-32) is needed by dmd-2.069.0-0.x86_64
libcurl(x86-32) is needed by dmd-2.069.0-0.x86_64

Why do package depends on 32-bit libraries? Was it always like 
that? I never installed dmd on Fedora before.


Re: Release D 2.069.0

2015-11-09 Thread Sebastiaan Koppe via Digitalmars-d-announce

On Monday, 9 November 2015 at 09:19:11 UTC, Bastiaan Veelo wrote:
Yes, use asModule() for that [1]. Not only does it enable using 
large grammars, it also saves compilation time for builds after 
the grammar has stabilised.


Thanks.

And should the grammar still be too large, it is good to know 
that Pegged is good at composing a parser from different 
sub-grammars [2]. So the difficulty is only in finding natural 
boundaries at which the grammar can be split, making it work 
should be easy.


I knew about composition. I just wanted to keep the same names as 
per the original spec, instead of nesting.





Re: Release D 2.069.0

2015-11-09 Thread Thomas Brix Larsen via Digitalmars-d-announce

On Monday, 9 November 2015 at 03:15:29 UTC, rsw0x wrote:
On Monday, 9 November 2015 at 02:15:17 UTC, Andrei Alexandrescu 
wrote:

On 11/8/15 2:58 PM, rsw0x wrote:
Interestingly, GDC seems *very* popular - it has a 4:1 
install rate of
gccgo and only trailing slightly behind the golang-go 
package(reference

compiler?) on Ubuntu's popcon.


Link? -- Andrei


debian:
https://qa.debian.org/popcon-graph.php?packages=gdc%2Cgccgo%2Cgolang&show_installed=on&want_legend=on&want_ticks=on&from_date=&to_date=&hlght_date=&date_fmt=%25Y-%25m&beenhere=1

ubuntu:
http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=gdc
http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=golang-go
http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=gccgo

note that dmd is not redistributed on most linux distros due to 
licensing issues


Opt-in stats from Arch:

https://www.archlinux.de/?page=PackageStatistics

go 19.45%
rust5.92%
gcc-go  5.61%
dmd 2.56%
ldc 1.72%
gdc 1.60%


Re: Release D 2.069.0

2015-11-09 Thread Bastiaan Veelo via Digitalmars-d-announce
On Sunday, 8 November 2015 at 14:37:32 UTC, Sebastiaan Koppe 
wrote:
You mean instead of mixin(grammer(`...`)) I write the output of 
grammer(`...`) to a file and include that into the final build?


Yes, use asModule() for that [1]. Not only does it enable using 
large grammars, it also saves compilation time for builds after 
the grammar has stabilised.


And should the grammar still be too large, it is good to know 
that Pegged is good at composing a parser from different 
sub-grammars [2]. So the difficulty is only in finding natural 
boundaries at which the grammar can be split, making it work 
should be easy.


[1] 
https://github.com/PhilippeSigaud/Pegged/wiki/Grammars-as-D-Modules
[2] 
https://github.com/PhilippeSigaud/Pegged/wiki/Grammar-Composition




Re: Release D 2.069.0

2015-11-08 Thread rsw0x via Digitalmars-d-announce
On Monday, 9 November 2015 at 02:15:17 UTC, Andrei Alexandrescu 
wrote:

On 11/8/15 2:58 PM, rsw0x wrote:
Interestingly, GDC seems *very* popular - it has a 4:1 install 
rate of
gccgo and only trailing slightly behind the golang-go 
package(reference

compiler?) on Ubuntu's popcon.


Link? -- Andrei


debian:
https://qa.debian.org/popcon-graph.php?packages=gdc%2Cgccgo%2Cgolang&show_installed=on&want_legend=on&want_ticks=on&from_date=&to_date=&hlght_date=&date_fmt=%25Y-%25m&beenhere=1

ubuntu:
http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=gdc
http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=golang-go
http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=gccgo

note that dmd is not redistributed on most linux distros due to 
licensing issues


Re: Release D 2.069.0

2015-11-08 Thread Andrei Alexandrescu via Digitalmars-d-announce

On 11/8/15 2:58 PM, rsw0x wrote:

Interestingly, GDC seems *very* popular - it has a 4:1 install rate of
gccgo and only trailing slightly behind the golang-go package(reference
compiler?) on Ubuntu's popcon.


Link? -- Andrei


Re: Release D 2.069.0

2015-11-08 Thread Daniel Murphy via Digitalmars-d-announce

On 9/11/2015 10:25 AM, Jack Stouffer wrote:


Is there any reason why this isn't currently used in the front end?


Lack of testing, focus on matching c-dmd performance, it used to be 
blocked and nobody realized it wasn't any more etc.


Re: Release D 2.069.0

2015-11-08 Thread Jack Stouffer via Digitalmars-d-announce

On Sunday, 8 November 2015 at 22:45:05 UTC, Daniel Murphy wrote:

Actually I think it's fixed now, just disabled.

It used to have problems with lib*/scan*, but those are in D 
now, and most of the allocations from the glue layer are being 
forwarded to the GC through rmem.


If anyone wants to try it they just need to add -version=GC to 
the DMD build flags and insert this function in root/rmem.d's 
version(GC) block.



extern (C) void* allocmemory(size_t m_size)
{
return GC.malloc(m_size);
}


Is there any reason why this isn't currently used in the front 
end?


Re: Release D 2.069.0

2015-11-08 Thread Daniel Murphy via Digitalmars-d-announce

On 8/11/2015 1:41 AM, Dmitry Olshansky wrote:


IMHO enabling D's GC in the frontend is better way to fix leaking in the
CTFE, but there are some issues with that (it segfaults if we enable GC).



Actually I think it's fixed now, just disabled.

It used to have problems with lib*/scan*, but those are in D now, and 
most of the allocations from the glue layer are being forwarded to the 
GC through rmem.


If anyone wants to try it they just need to add -version=GC to the DMD 
build flags and insert this function in root/rmem.d's version(GC) block.



extern (C) void* allocmemory(size_t m_size)
{
return GC.malloc(m_size);
}


Re: Release D 2.069.0

2015-11-08 Thread rsw0x via Digitalmars-d-announce
On Sunday, 8 November 2015 at 18:56:55 UTC, Andrei Alexandrescu 
wrote:

On 11/03/2015 08:49 PM, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html
http://downloads.dlang.org/releases/2.x/2.069.0/

This is the first release with a self-hosted dmd compiler and 
comes with
even more rangified phobos functions, 
std.experimental.allocator, and

many other improvements.

See the changelog for more details.
http://dlang.org/changelog/2.069.0.html

-Martin


This schedule seems to work well. Daily downloads on the rise - 
28-days moving average almost 1400 as of today. Good work 
everyone and particularly thanks Martin for putting us on a 
schedule!


http://erdani.com/d/downloads.daily.png


Andrei


This made me a bit interested on Linux package downloads, but the 
only sources seem to be self-reported so you can only compare it 
relatively.


Interestingly, GDC seems *very* popular - it has a 4:1 install 
rate of gccgo and only trailing slightly behind the golang-go 
package(reference compiler?) on Ubuntu's popcon. Debian's shows 
nearly similar numbers. LDC is lagging severely behind on both - 
packaging issue?


Re: Release D 2.069.0

2015-11-08 Thread Andrei Alexandrescu via Digitalmars-d-announce

On 11/03/2015 08:49 PM, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html
http://downloads.dlang.org/releases/2.x/2.069.0/

This is the first release with a self-hosted dmd compiler and comes with
even more rangified phobos functions, std.experimental.allocator, and
many other improvements.

See the changelog for more details.
http://dlang.org/changelog/2.069.0.html

-Martin


This schedule seems to work well. Daily downloads on the rise - 28-days 
moving average almost 1400 as of today. Good work everyone and 
particularly thanks Martin for putting us on a schedule!


http://erdani.com/d/downloads.daily.png


Andrei



Re: Release D 2.069.0

2015-11-08 Thread Sebastiaan Koppe via Digitalmars-d-announce

On Sunday, 8 November 2015 at 14:22:38 UTC, Dicebot wrote:
On Sunday, 8 November 2015 at 14:14:23 UTC, Sebastiaan Koppe 
wrote:
With a codebase like phobos, compiling in several steps isn't 
a bad solution. But I am building a parser using pegged, and 
splitting up the grammar into different modules feels like a 
no-no. It's an option though.


Note that you can still used pegged in a stand-alone style with 
just saving generator output in a separate module and building 
it with project in a separate step. This means losing one of 
main advantages compared to using 3d party generators but if 
you hit the memory limit hard it may be the only option for now.


You mean instead of mixin(grammer(`...`)) I write the output of 
grammer(`...`) to a file and include that into the final build?


That might be a nice idea once I make a dub package out of it; to 
presupply the generated parser instead of eating up user's mem.


Thanks.


Re: Release D 2.069.0

2015-11-08 Thread Dicebot via Digitalmars-d-announce
On Sunday, 8 November 2015 at 14:14:23 UTC, Sebastiaan Koppe 
wrote:
With a codebase like phobos, compiling in several steps isn't a 
bad solution. But I am building a parser using pegged, and 
splitting up the grammar into different modules feels like a 
no-no. It's an option though.


Note that you can still used pegged in a stand-alone style with 
just saving generator output in a separate module and building it 
with project in a separate step. This means losing one of main 
advantages compared to using 3d party generators but if you hit 
the memory limit hard it may be the only option for now.


Re: Release D 2.069.0

2015-11-08 Thread Sebastiaan Koppe via Digitalmars-d-announce
On Saturday, 7 November 2015 at 13:25:41 UTC, Jonathan M Davis 
wrote:

What can we do when it eats up all 4 gigs? (Windows)


With any program, if you're hitting the limit of the 32-bit 
address space (which is actually more like 3.6 GiB than 4), 
then you really only have two options - use less memory or go 
to 64-bit. In the case of dmd specifically, that means either 
reducing how much memory dmd consumes (which would mean 
improvements to the dmd codebase), have a 64-bit build of dmd 
(I have no idea what's involved with that, though it sounds 
like it's been done before), or you have to build your program 
in separate pieces that each require a low enough amount of 
memory when compiling that they don't run out of memory. Phobos 
has been built in pieces for quite a while now specifically 
because it requires too much memory to build it all at once 
(std.algorithm alone requires a lot of memory thanks to all of 
the template instantiations in its unit tests).


- Jonathan M Davis


With a codebase like phobos, compiling in several steps isn't a 
bad solution. But I am building a parser using pegged, and 
splitting up the grammar into different modules feels like a 
no-no. It's an option though.


Right now I run compile with gdc in a virtual machine. Still eats 
about 7 gigs.


The 64bit dmd would be nice. I waved the idea goodbye when I 
couldn't find a download link. Maybe need to look into it.


Re: Release D 2.069.0

2015-11-08 Thread Jonathan M Davis via Digitalmars-d-announce
On Saturday, November 07, 2015 17:41:20 Dmitry Olshansky via 
Digitalmars-d-announce wrote:
> On 07-Nov-2015 16:25, Jonathan M Davis via Digitalmars-d-announce wrote:
> > Phobos has been built in pieces for quite a while now
> > specifically because it requires too much memory to build it all at once
> > (std.algorithm alone requires a lot of memory thanks to all of the template
> > instantiations in its unit tests).
> >
>
> That's only true for unittests, it still builds the library in one go
> (in about 7 seconds for me) on windows.

Yes, but it's forced to do that with the unit test build, because it takes
too much memory to compile them. Other programs may have the same problem
(especially if they use templates and CTFE heavily).

But dmd just does not do well with memory consumption when it comes to
templates and CTFE, and it definitely will be a major improvement when we
can reduce how much memory compiling them requires.

- Jonathan M Davis



Re: Release D 2.069.0

2015-11-07 Thread Dmitry Olshansky via Digitalmars-d-announce

On 07-Nov-2015 16:25, Jonathan M Davis via Digitalmars-d-announce wrote:

On Thursday, November 05, 2015 02:38:01 Sebastiaan Koppe via 
Digitalmars-d-announce wrote:

On Wednesday, 4 November 2015 at 17:52:23 UTC, Dmitry Olshansky
wrote:

If host machine is x64 bit windows try setting large address
aware bit on the executable (there are tools to do that IRC),
would allow it to eat up to ~4 gigs.


What can we do when it eats up all 4 gigs? (Windows)




Getting 64-bit packaged should be simplest thing possible. Ask around on
D.learn maybe somebody could either show how to build it manually or at 
least have done so before.


Otherwise - the single biggest problem with memory is CTFE leaking 
memory like crazy. Second to that is templates.


IMHO enabling D's GC in the frontend is better way to fix leaking in the 
CTFE, but there are some issues with that (it segfaults if we enable GC).


Lastly compiler's frontend could use some improvement in general and now 
that it's written in D and I totally expect better memory management to 
come soon.



Phobos has been built in pieces for quite a while now
specifically because it requires too much memory to build it all at once
(std.algorithm alone requires a lot of memory thanks to all of the template
instantiations in its unit tests).



That's only true for unittests, it still builds the library in one go 
(in about 7 seconds for me) on windows.



--
Dmitry Olshansky


Re: Release D 2.069.0

2015-11-07 Thread Jonathan M Davis via Digitalmars-d-announce
On Thursday, November 05, 2015 02:38:01 Sebastiaan Koppe via 
Digitalmars-d-announce wrote:
> On Wednesday, 4 November 2015 at 17:52:23 UTC, Dmitry Olshansky
> wrote:
> > If host machine is x64 bit windows try setting large address
> > aware bit on the executable (there are tools to do that IRC),
> > would allow it to eat up to ~4 gigs.
>
> What can we do when it eats up all 4 gigs? (Windows)

With any program, if you're hitting the limit of the 32-bit address space
(which is actually more like 3.6 GiB than 4), then you really only have two
options - use less memory or go to 64-bit. In the case of dmd specifically,
that means either reducing how much memory dmd consumes (which would mean
improvements to the dmd codebase), have a 64-bit build of dmd (I have no
idea what's involved with that, though it sounds like it's been done
before), or you have to build your program in separate pieces that each
require a low enough amount of memory when compiling that they don't run out
of memory. Phobos has been built in pieces for quite a while now
specifically because it requires too much memory to build it all at once
(std.algorithm alone requires a lot of memory thanks to all of the template
instantiations in its unit tests).

- Jonathan M Davis



Re: Release D 2.069.0

2015-11-04 Thread ric maicle via Digitalmars-d-announce

On Wednesday, 04 November, 2015 09:49 AM, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html
http://downloads.dlang.org/releases/2.x/2.069.0/

This is the first release with a self-hosted dmd compiler and comes with
even more rangified phobos functions, std.experimental.allocator, and
many other improvements.

See the changelog for more details.
http://dlang.org/changelog/2.069.0.html

-Martin


Great! This is fantastic!
Thank you D community.


Re: Release D 2.069.0

2015-11-04 Thread Sebastiaan Koppe via Digitalmars-d-announce
On Wednesday, 4 November 2015 at 17:52:23 UTC, Dmitry Olshansky 
wrote:
If host machine is x64 bit windows try setting large address 
aware bit on the executable (there are tools to do that IRC), 
would allow it to eat up to ~4 gigs.


What can we do when it eats up all 4 gigs? (Windows)



Re: Release D 2.069.0

2015-11-04 Thread Martin Nowak via Digitalmars-d-announce
On Wednesday, 4 November 2015 at 17:52:23 UTC, Dmitry Olshansky 
wrote:
If host machine is x64 bit windows try setting large address 
aware bit on the executable (there are tools to do that IRC), 
would allow it to eat up to ~4 gigs.


We're already doing that since quite a while.
https://github.com/D-Programming-Language/dmd/commit/172b55d22bd4a144d889c3fa8d9279d8e0a0ce1c


Re: Release D 2.069.0

2015-11-04 Thread Joseph Rushton Wakeling via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


Thanks and congratulations to all involved!  Just built and 
installed it.  Now, what to try out first ... :-)


Re: Release D 2.069.0

2015-11-04 Thread Daniel Kozák via Digitalmars-d-announce
V Wed, 04 Nov 2015 18:44:40 +
Dicebot via Digitalmars-d-announce
 napsáno:

> On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:
> > Glad to announce D 2.069.0.
> >
> > http://dlang.org/download.html 
> > http://downloads.dlang.org/releases/2.x/2.069.0/
> >
> > This is the first release with a self-hosted dmd compiler and 
> > comes with even more rangified phobos functions, 
> > std.experimental.allocator, and many other improvements.
> >
> > See the changelog for more details. 
> > http://dlang.org/changelog/2.069.0.html
> >
> > -Martin  
> 
> Arch Linux packages uploaded.

Thanks :)
Btw. any specific reason why dub is not in dlang group?



Re: Release D 2.069.0

2015-11-04 Thread Dicebot via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


See the changelog for more details. 
http://dlang.org/changelog/2.069.0.html


-Martin


Arch Linux packages uploaded.


Re: Release D 2.069.0

2015-11-04 Thread Rainer Schuetze via Digitalmars-d-announce



On 04.11.2015 17:19, Vladimir Panteleev wrote:

On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins wrote:

Are there any plans to release a dmd64.exe?


I don't think we can even build one any more. Rainer/Martin?



I have created a combination of a VC++ project and a Visual D project to 
build these. IIRC 
https://github.com/D-Programming-Language/dmd/pull/5039 is the only 
blocker, but I haven't tried recently.


Re: Release D 2.069.0

2015-11-04 Thread Dmitry Olshansky via Digitalmars-d-announce

On 04-Nov-2015 18:25, Márcio Martins wrote:

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html
http://downloads.dlang.org/releases/2.x/2.069.0/

This is the first release with a self-hosted dmd compiler and comes
with even more rangified phobos functions, std.experimental.allocator,
and many other improvements.

See the changelog for more details.
http://dlang.org/changelog/2.069.0.html

-Martin


Seems like memory usage went up by a significant amount, as I can no
longer compile our project on my Windows machine.

DMD 2.068.2 uses up to 1100MB of memory during our build and succeeds
DMD 2.069 used up to 1600MB of memory before crashing with "Error: out
of memory"

Are there any plans to release a dmd64.exe?


If host machine is x64 bit windows try setting large address aware bit 
on the executable (there are tools to do that IRC), would allow it to 
eat up to ~4 gigs.


--
Dmitry Olshansky


Re: Release D 2.069.0

2015-11-04 Thread Vladimir Panteleev via Digitalmars-d-announce
On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins 
wrote:

Are there any plans to release a dmd64.exe?


I don't think we can even build one any more. Rainer/Martin?



Re: Release D 2.069.0

2015-11-04 Thread Márcio Martins via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


See the changelog for more details. 
http://dlang.org/changelog/2.069.0.html


-Martin


Seems like memory usage went up by a significant amount, as I can 
no longer compile our project on my Windows machine.


DMD 2.068.2 uses up to 1100MB of memory during our build and 
succeeds
DMD 2.069 used up to 1600MB of memory before crashing with 
"Error: out of memory"


Are there any plans to release a dmd64.exe?


Re: Release D 2.069.0

2015-11-04 Thread Jacob Carlborg via Digitalmars-d-announce

On 2015-11-04 11:07, Walter Bright wrote:


There's much discussion on that feature on reddit.

https://www.reddit.com/r/programming/comments/3rg17h/d_2069_has_been_released_basic_support_for/


Cool :)

--
/Jacob Carlborg


Re: Release D 2.069.0

2015-11-04 Thread Martin Nowak via Digitalmars-d-announce
On 11/04/2015 11:58 AM, Martin Nowak wrote:
> Did anything go wrong with the uninstall?

Let continue here
https://issues.dlang.org/show_bug.cgi?id=15284


Re: Release D 2.069.0

2015-11-04 Thread Andrea Fontana via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


Same question I did some time ago:
is those binaries compiled with 2.068 or 2.069 itself?

The second choice should be the right one.

Andrea


Re: Release D 2.069.0

2015-11-04 Thread wobbles via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


See the changelog for more details. 
http://dlang.org/changelog/2.069.0.html


-Martin


Great stuff! Thanks.

In my (very) limited trial run - I don't notice much of a 
performance difference.


Is there any numbers to compare 2069 with 2068 (and maybe even 
older)?


Re: Release D 2.069.0

2015-11-04 Thread Martin Nowak via Digitalmars-d-announce
On 11/04/2015 10:01 AM, Suliman wrote:
>> Regards,
>> --
> 
> Same problem.

It's likely related to this fix which now let's the installer wait on
the uninstaller to finish.
https://github.com/D-Programming-Language/installer/commit/526f35495cdc615b26b65d73fa7b4aa0477b1d12

Did anything go wrong with the uninstall?


Re: Release D 2.069.0

2015-11-04 Thread Martin Nowak via Digitalmars-d-announce
On 11/04/2015 10:01 AM, deadalnix wrote:
> 
> Bonus question: how soon can we expect travis to pick up the new version ?

I updated http://ftp.digitalmars.com/LATEST now and added that step to
http://wiki.dlang.org/DMD_Release_Building.


Re: Release D 2.069.0

2015-11-04 Thread HaraldZealot via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

...

-Martin


Congratulations!!!


Re: Release D 2.069.0

2015-11-04 Thread Dmitry via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 08:29:22 UTC, Mike James wrote:
There seems to be an install problem with the .exe version for 
Windows. The installer removes the old DMD then doesn't install 
the 2.069.0 version. In the task manager it's still running at 
50% CPU time. It fails on Windows Vista and Windows 7.

I don't have this problem - installed without any problems.
(Windows 7 x64)



Re: Release D 2.069.0

2015-11-04 Thread Walter Bright via Digitalmars-d-announce

On 11/4/2015 1:38 AM, Andrei Alexandrescu wrote:

On 11/4/15 2:49 AM, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html
http://downloads.dlang.org/releases/2.x/2.069.0/

This is the first release with a self-hosted dmd compiler and comes with
even more rangified phobos functions, std.experimental.allocator, and
many other improvements.

See the changelog for more details.
http://dlang.org/changelog/2.069.0.html


Fantastic, thanks all! More media:

https://www.facebook.com/dlang.org/posts/1164146430265703

https://twitter.com/D_Programming/status/661839363677036544


It's also on hacker news.

https://news.ycombinator.com/newest


Re: Release D 2.069.0

2015-11-04 Thread Walter Bright via Digitalmars-d-announce

On 11/3/2015 11:12 PM, Jacob Carlborg wrote:

On 2015-11-04 02:49, Martin Nowak wrote:

Glad to announce D 2.069.0.


A bit of self promotion: this is the first release with basic support for
Objective-C [1]. Many thanks to Michel Fortin that did the original 
implementation.

[1] http://dlang.org/changelog/2.069.0.html#objective-c-support



There's much discussion on that feature on reddit.

https://www.reddit.com/r/programming/comments/3rg17h/d_2069_has_been_released_basic_support_for/


Re: Release D 2.069.0

2015-11-04 Thread Andrei Alexandrescu via Digitalmars-d-announce

On 11/4/15 2:49 AM, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html
http://downloads.dlang.org/releases/2.x/2.069.0/

This is the first release with a self-hosted dmd compiler and comes with
even more rangified phobos functions, std.experimental.allocator, and
many other improvements.

See the changelog for more details.
http://dlang.org/changelog/2.069.0.html


Fantastic, thanks all! More media:

https://www.facebook.com/dlang.org/posts/1164146430265703

https://twitter.com/D_Programming/status/661839363677036544


Andrei




Re: Release D 2.069.0

2015-11-04 Thread deadalnix via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


See the changelog for more details. 
http://dlang.org/changelog/2.069.0.html


-Martin


Bonus question: how soon can we expect travis to pick up the new 
version ?


Re: Release D 2.069.0

2015-11-04 Thread Suliman via Digitalmars-d-announce
There seems to be an install problem with the .exe version for 
Windows. The installer removes the old DMD then doesn't install 
the 2.069.0 version. In the task manager it's still running at 
50% CPU time. It fails on Windows Vista and Windows 7.


Regards,
--


Same problem.




Re: Release D 2.069.0

2015-11-04 Thread Mike James via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


See the changelog for more details. 
http://dlang.org/changelog/2.069.0.html


-Martin


Hi.

There seems to be an install problem with the .exe version for 
Windows. The installer removes the old DMD then doesn't install 
the 2.069.0 version. In the task manager it's still running at 
50% CPU time. It fails on Windows Vista and Windows 7.


Regards,
--


Re: Release D 2.069.0

2015-11-03 Thread Jacob Carlborg via Digitalmars-d-announce

On 2015-11-04 02:49, Martin Nowak wrote:

Glad to announce D 2.069.0.


A bit of self promotion: this is the first release with basic support 
for Objective-C [1]. Many thanks to Michel Fortin that did the original 
implementation.


[1] http://dlang.org/changelog/2.069.0.html#objective-c-support

--
/Jacob Carlborg


Re: Release D 2.069.0

2015-11-03 Thread Walter Bright via Digitalmars-d-announce

On 11/3/2015 5:49 PM, Martin Nowak wrote:

Glad to announce D 2.069.0.


Thanks to everyone involved with this - and special mention for Daniel Murphy 
who did the remarkable job of translating the C++ code to D .


Re: Release D 2.069.0

2015-11-03 Thread Walter Bright via Digitalmars-d-announce

On 11/3/2015 5:49 PM, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html
http://downloads.dlang.org/releases/2.x/2.069.0/

This is the first release with a self-hosted dmd compiler and comes with
even more rangified phobos functions, std.experimental.allocator, and
many other improvements.

See the changelog for more details.
http://dlang.org/changelog/2.069.0.html

-Martin



Thank you, Martin, for the hard work you did to prepare and shepherd DMD through 
the release process!


Re: Release D 2.069.0

2015-11-03 Thread deadalnix via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


See the changelog for more details. 
http://dlang.org/changelog/2.069.0.html


-Martin


Yeahh !


Re: Release D 2.069.0

2015-11-03 Thread BBasile via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


See the changelog for more details. 
http://dlang.org/changelog/2.069.0.html


-Martin


Thx.


Re: Release D 2.069.0

2015-11-03 Thread Jack Stouffer via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


See the changelog for more details. 
http://dlang.org/changelog/2.069.0.html


-Martin


https://www.reddit.com/r/programming/comments/3rg17h/d_2069_has_been_released_basic_support_for/


Re: Release D 2.069.0

2015-11-03 Thread Joakim via Digitalmars-d-announce

On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote:

Glad to announce D 2.069.0.

http://dlang.org/download.html 
http://downloads.dlang.org/releases/2.x/2.069.0/


This is the first release with a self-hosted dmd compiler and 
comes with even more rangified phobos functions, 
std.experimental.allocator, and many other improvements.


See the changelog for more details. 
http://dlang.org/changelog/2.069.0.html


-Martin


Whoo, ddmd is out!  Congrats to Daniel and everyone else involved.