<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general">
    <title>gmane.comp.lang.d.general</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118619"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118618"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118617"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118616"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118615"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118614"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118613"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118612"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118611"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118610"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118609"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118608"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118607"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118606"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118605"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118604"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118603"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118602"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118601"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.d.general/118600"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118619">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118619</link>
    <description>&lt;pre&gt;
We have std.typecons.RefCounted, which is basically a shared pointer.


delete is only used for GC memory, and manual memory management should really 
be done with malloc and free rather than explicitly freeing GC memory. But if 
you really want to risk blowing your foot off, you can always use destroy to 
destroy an object in GC memory and core.memory.GC.free to free it.

Also, once we get custom allocators, it should be easier to manually manage 
memory (e.g. I would assume that it would properly abstract doing malloc and 
then emplacing the object in that memory so that you do something like 
allocator!MyObject(args) rather than having to deal with emplace directly).

- Jonathan M Davis

&lt;/pre&gt;</description>
    <dc:creator>Jonathan M Davis</dc:creator>
    <dc:date>2013-05-23T23:02:00</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118618">
    <title>Best XML Library</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118618</link>
    <description>&lt;pre&gt;I'm thinking of starting on a small XMPP-based messaging client 
and server, which would necessitate quite an extensive use of 
XML. Since Tango is no longer being maintained, and Vibe.d 
doesn't support XML (as far as I know), what would be the best 
option for XML capabilities?

&lt;/pre&gt;</description>
    <dc:creator>Meta</dc:creator>
    <dc:date>2013-05-23T22:22:24</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118617">
    <title>Re: primitive value overflow</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118617</link>
    <description>&lt;pre&gt;Am Thu, 23 May 2013 19:55:36 +0200
schrieb luka8088 &amp;lt;luka8088&amp;lt; at &amp;gt;owave.net&amp;gt;:

 
Ok, I remember that from Delphi
http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/devcommon/compdirsoverflowchecking_xml.html
It is a good idea and probably better then some Checked!int
construct. Overflows are only wanted in a few places, so it
makes sense to have this check enabled globally and to disable
it for some code locally.

&lt;/pre&gt;</description>
    <dc:creator>Marco Leise</dc:creator>
    <dc:date>2013-05-23T22:02:27</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118616">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118616</link>
    <description>&lt;pre&gt;
I'm also in agreement with Manu.  There may well already be bugs for some of
them -- e.g. there is one for toUpperInPlace which he referred to, and the
source of the allocation is clear and is even responsible for other bugs:
http://d.puremagic.com/issues/show_bug.cgi?id=9629

I asked for a list because, even if all the cases are registered as bugs, it's
not necessarily easy to find them.  So, we need to either tag all the bugs so
they can be found easily, or make a list somewhere.

&lt;/pre&gt;</description>
    <dc:creator>Joseph Rushton Wakeling</dc:creator>
    <dc:date>2013-05-23T21:42:55</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118615">
    <title>Re: D stability testing framework</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118615</link>
    <description>&lt;pre&gt;D:YAML might be of use if needed.

There's been no release in recent past (featureset has not 
changed, which I'm still planning for a release), but I've been 
maintaining its compatibility with current DMD for a while and I 
have no intention to stop in forseeable future as I use it in 
pretty much every project I start.

It's somewhere around 10-20kLOC.

https://github.com/kiith-sa/D-YAML


Also, Derelict3 might be a good idea. Derelict has been actively 
maintained for pretty much most of D's history.

&lt;/pre&gt;</description>
    <dc:creator>Kiith-Sa</dc:creator>
    <dc:date>2013-05-23T21:39:20</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118614">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118614</link>
    <description>&lt;pre&gt;Am 23.05.2013 20:13, schrieb Brad Anderson:

With the increase usage of Windows Phone 8 (I know I know), MonoGame, 
Unity3D and now PS Vita, C# usage is also increasing, so there is a risk 
of D losing that train, even with Remedy's good example.

Please note that on those scenarios, C# is also compiled to native code.

--
Paulo

&lt;/pre&gt;</description>
    <dc:creator>Paulo Pinto</dc:creator>
    <dc:date>2013-05-23T21:37:53</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118613">
    <title>Re: D stability testing framework</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118613</link>
    <description>&lt;pre&gt;
I'm not familiar with them and didn't know their maintenance status, otherwise
I'd have suggested both.  I was also wondering about your dvm and/or orbit ... ?

&lt;/pre&gt;</description>
    <dc:creator>Joseph Rushton Wakeling</dc:creator>
    <dc:date>2013-05-23T21:26:37</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118612">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118612</link>
    <description>&lt;pre&gt;
Thank you very much for the reply - I didn't realize those were 
already there.

&lt;/pre&gt;</description>
    <dc:creator>QAston</dc:creator>
    <dc:date>2013-05-23T21:00:08</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118611">
    <title>Re: Nightly Builds and Better Download Package</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118611</link>
    <description>&lt;pre&gt;
Ignore the auto-tester.. it's a non-issue until there's make targets 
that do the job.  Having it run make install a few times and uploading 
the results somewhere are easy.

&lt;/pre&gt;</description>
    <dc:creator>Brad Roberts</dc:creator>
    <dc:date>2013-05-23T21:00:27</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118610">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118610</link>
    <description>&lt;pre&gt;23-May-2013 22:13, Brad Anderson пишет:

I have simple and future proof proposal:

1. Acknowledge how containers would look like (API level is fine, and 
std.container has it). Postpone allocator or consider them be backed 
into container.

2. Then for any function that has to allocate something (array 
typically) add a compile-time parameter - container to use. Obviously 
there has to be a constraint on what kind of operations it must provide.

3. std.algorithm and std.range become usable. We then can extend this 
policy beyond.

Some examples to boot:

1. std.array.array - incredibly nice tool, turns any range into array.
Let's make a construct function that does the same for any container:
auto arr = array(iota(0, 10).map....)
---&amp;gt;
auto arr = construct!(Array!int)(iota(0, 10).map...)

by repeatedly calling insertAny in general, and doing better things 
depending on the primitives available (like reserving space beforehand 
for array-like types).

BTW users can use alias FTW:
alias toArray = construct&lt;/pre&gt;</description>
    <dc:creator>Dmitry Olshansky</dc:creator>
    <dc:date>2013-05-23T20:55:17</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118609">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118609</link>
    <description>&lt;pre&gt;
There is std.typecons.Unique and std.typecons.RefCounted.  Unique 
is more cumbersome than unique_ptr but it should work though I've 
never tried to use it.  Proper rvalue references would be a nice 
improvement here.

RefCounted doesn't support classes yet simply because nobody has 
taken the time to add support for them.

It'd be nice to just be able to say shared_ptr = RefCounted, 
unique_ptr = Unique when somebody asks about smart pointers in D 
though.

std.typecons.scoped is also useful but a bit buggy/cumbersome.  
jA_cOp (IRC handle) is working on improving it.  Manu tried his 
hand at implementing his own version for fun (which came up 
because we were engaged in yet another GC argument with someone 
coming from C++).

&lt;/pre&gt;</description>
    <dc:creator>Brad Anderson</dc:creator>
    <dc:date>2013-05-23T20:51:41</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118608">
    <title>Re: Nightly Builds and Better Download Package</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118608</link>
    <description>&lt;pre&gt;

Back to the main topic.

Walter is there any way we could help with improving packaging?

I guess for the first one the fastest way will be to make pull 
request for pull-tester and make consultation with bradd.

But AFAIK second one depends mostly on you.
It's really pain to download 20MB each time I need to install 
DMD... 5MB would be the max package size if we split OS versions.

And yeah, I move alot so downloading 20MB takes some time with my 
UMTS modem :)

&lt;/pre&gt;</description>
    <dc:creator>nazriel</dc:creator>
    <dc:date>2013-05-23T20:50:31</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118607">
    <title>Re: Nightly Builds and Better Download Package</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118607</link>
    <description>&lt;pre&gt;
No, it isn't closed source any more than "zip" is closed source.

&lt;/pre&gt;</description>
    <dc:creator>Walter Bright</dc:creator>
    <dc:date>2013-05-23T20:45:29</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118606">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118606</link>
    <description>&lt;pre&gt;
Please file a bug on the bugtracker to update memory.html to reflect
current usage. Misleading (or outdated) documentation is often worse
than no documentation.


T

&lt;/pre&gt;</description>
    <dc:creator>H. S. Teoh</dc:creator>
    <dc:date>2013-05-23T20:21:12</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118605">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118605</link>
    <description>&lt;pre&gt;
Sorry, should be:
Maybe even place the malloc-howto in Efficency paragraph of main 
website.

&lt;/pre&gt;</description>
    <dc:creator>QAston</dc:creator>
    <dc:date>2013-05-23T20:18:36</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118604">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118604</link>
    <description>&lt;pre&gt;On Thursday, 23 May 2013 at 20:07:08 UTC, Steven Schveighoffer 
wrote:

Yes, I know the rationale behind deprecating delete and i agree 
with it. But from newcomer's point of view this looks misleading 
- not everyone has enough patience (or hatered towards c++) to 
lurk inside mailing lists and official website shows the 
deprecated way of doing things: http://dlang.org/memory.html . 
IMO manual memory management howto should be in a visible place - 
to dispell the myths language suffers from. Maybe even place in 
to the malloc-howto in Efficency paragraph of main website.

&lt;/pre&gt;</description>
    <dc:creator>QAston</dc:creator>
    <dc:date>2013-05-23T20:15:50</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118603">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118603</link>
    <description>&lt;pre&gt;
Presumably, we'll get that with custom allocators. So, it's probably just a 
question of how long it'll take to sort those out.

- Jonathan M Davis

&lt;/pre&gt;</description>
    <dc:creator>Jonathan M Davis</dc:creator>
    <dc:date>2013-05-23T20:14:39</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118602">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118602</link>
    <description>&lt;pre&gt;

While I'm not specifically addressing the ability or not to disable the GC  
(I agree D has problems tehre), deprecating the delete operator does NOT  
preclude manual memory management.

The problem with delete is it conflates destruction with deallocation.   
Yes, when you deallocate, you want to destroy, but manual deallocation is  
a very dangerous operation.  Most of the time, you want to destroy WITHOUT  
deallocating (this is for cases where you are relying on the GC).

Then I think Andrei also had a gripe that D had a whole keyword dedicated  
to an unsafe operation.

You can still destroy and deallocate with destroy() and GC.free().

-Steve

&lt;/pre&gt;</description>
    <dc:creator>Steven Schveighoffer</dc:creator>
    <dc:date>2013-05-23T20:07:06</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118601">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118601</link>
    <description>&lt;pre&gt;On Thu, 23 May 2013 21:37:26 +0200
"Kiith-Sa" &amp;lt;kiithsacmp&amp;lt; at &amp;gt;gmail.com&amp;gt; wrote:


I'd like to hear an official confirmation (or denial) at this point,
too (assuming Remedy is at a point where they're comfortable making a
statement on the matter - and after all, it would make sense if
they're still keeping open the possibility of backing out of D for
whatever they're using it on by release if they end up needing to do so,
even if such a possibility is very unlikely).

However, I do think it's a safe bet: Like Brad said, Remedy is a
relatively small dev company that doesn't have a history of working on
multiple AAA titles simultaneously. They *are* known to have one other
mystery title besides Quantum Break in development, but it's for iOS -
so it's not a AAA title, and it's definitely not x86, so that one can
definitely be ruled out (unless Manu was messing with us to keep
it super-secret ;) ).

As far as I'm concerned, the whole "Quantum Break uses D" thing *is*
technically a rumor, and I think it's probably bes&lt;/pre&gt;</description>
    <dc:creator>Nick Sabalausky</dc:creator>
    <dc:date>2013-05-23T20:06:01</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118600">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118600</link>
    <description>&lt;pre&gt;
I think that Phobos should have some support for manual memory 
management. I don't mean clearing out the gc usage there, as it's 
fairly obvious. I rather think about something like 
unique_ptr/shared_ptr in the std. I think unique_ptr can't be 
implemented without rval refs, also C++ sollutions may not fit 
here. Anyways, now it's not so straightforward how to live 
without gc so standard sollution would be really helpful.

Also, it should be visible in C++/D that D can really deal with 
manual memory management conveniently - when I checked out Dlang 
first time I felt very disappointed that "delete" operator is 
deprecated. "So - they advertise one can code without GC, yet 
they seem to deprecate the operator" - false claims discourage 
people from using new languages.


&lt;/pre&gt;</description>
    <dc:creator>QAston</dc:creator>
    <dc:date>2013-05-23T20:02:05</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.d.general/118599">
    <title>Re: D on next-gen consoles and for game development</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.d.general/118599</link>
    <description>&lt;pre&gt;W dniu 23.05.2013 20:13, Brad Anderson pisze:

When I started learning D 2 years ago, I read on the D webpage that D
allows manual memory management and it's possible to disable the GC. My
first thought was that standard library is written without using GC.
This could be kind of lowest common denominator solution to the
problem. Later, I found it was only my wishful thinking. So, you can
disable GC, but then you can't reliably use the standard library.

Lowest common denominator has its own weaknesses, mainly it sometimes
sacrifices performance, as some algorithms may perform better using
managed slices for example, than using manually managed memory.

nogc attribute could be used to not only block GC, it could be used to
select between GC and non-GC code with the help of the overloading
mechanism. So, the programmer instead of writing one function, would
actually write two functions, one for the GC and one for manual memory
management - only if they need separete code. This will surely double
the effort for&lt;/pre&gt;</description>
    <dc:creator>Piotr Szturmaj</dc:creator>
    <dc:date>2013-05-23T19:58:32</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.comp.lang.d.general">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.comp.lang.d.general</link>
  </textinput>
</rdf:RDF>
