Error: template cannot deduce function from argument types.

2014-08-23 Thread Damian Day via Digitalmars-d-learn
Hi, I've been trying to reduce a bug in the containers (8824). From the example below it seems the dup method is passing the constructor an array of dchars and the template is failing. Is this a compiler bug, or ? import std.range, std.traits; struct Array2(T) { private T[] _payload;

Re: What hashing algorithm is used for the D implementation of associative arrays?

2014-08-09 Thread Damian Day via Digitalmars-d-learn
On Saturday, 9 August 2014 at 09:33:12 UTC, Gary Willoughby wrote: What hashing algorithm is used for the D implementation of associative arrays? Where in the D source does the AA code live? https://github.com/D-Programming-Language/druntime/blob/master/src/rt/aaA.d I think it uses the

Building phobos documentation

2014-06-06 Thread Damian Day via Digitalmars-d-learn
I'm having some trouble with building Phobos documentation locally on Win32. I've been referring to this guide: http://wiki.dlang.org/Building_DMD#Building_the_Docs I don't want to pull it from github and I don't really need the tools building either. My make command is: make -f win32.mak

Re: Is there any way to differentiate between a type and an alias?

2014-05-25 Thread Damian Day via Digitalmars-d-learn
On 25/05/2014 12:04, Rene Zwanenburg wrote: Given alias GLenum = uint; void glSomeFunction(GLenum, uint); Now, is there some way to differentiate between GLenum and uint when using ParameterTypeTuple!glSomeFunction? I'm writing a function which shows the arguments a GL function was called

Array!T and find are slow

2014-05-14 Thread Damian Day via Digitalmars-d-learn
I've found bench-marking my program that std.algorithm.find is very slow on Array!T, due to the fact it iterates on a range instead of a plain array. I've written some search functions, which are many times faster, is it worth making a pull request? http://dpaste.dzfl.pl/63b54aa27f35#

Re: Array!T and find are slow

2014-05-14 Thread Damian Day via Digitalmars-d-learn
On Wednesday, 14 May 2014 at 14:54:57 UTC, David Nadlinger wrote: Could you post a short benchmark snippet explicitly showing the problem? Benchmark found here: http://dpaste.dzfl.pl/0058fc8341830

Re: Array!T and find are slow

2014-05-14 Thread Damian Day via Digitalmars-d-learn
On Wednesday, 14 May 2014 at 17:57:30 UTC, monarch_dodra wrote: BTW, this is a more general issue: Given a generic algorithm std.foo, how can I write my own (better optimized) object.foo, and make sure *that* is called instead? I initially filed the issue for retro, while indeed mentioning

Re: Socket server + thread: cpu usage

2014-04-30 Thread Damian Day via Digitalmars-d-learn
On Tuesday, 29 April 2014 at 17:44:21 UTC, Tim wrote: On Tuesday, 29 April 2014 at 17:35:08 UTC, Tim wrote: On Tuesday, 29 April 2014 at 17:19:41 UTC, Adam D. Ruppe wrote: On Tuesday, 29 April 2014 at 17:16:33 UTC, Tim wrote: Is there anything I'm doing wrong? You should be using a blocking

Can I circumvent nothrow?

2014-04-26 Thread Damian Day via Digitalmars-d-learn
So I have this procedure: extern (C) void signal_proc(int sn) @system nothrow Which can call this: shutdown_system() @system nothrow Problem I have is inside shutdown_system() I have code that can't possibly be @nothrow because their are a lot of subsystems to shutdown. What I've done for

Re: Can I circumvent nothrow?

2014-04-26 Thread Damian Day via Digitalmars-d-learn
On Sunday, 27 April 2014 at 01:53:15 UTC, Ali Çehreli wrote: On 04/26/2014 06:39 PM, Damian Day wrote: Problem I have is inside shutdown_system() I have code that can't possibly be @nothrow because their are a lot of subsystems to shutdown. You can wrap the contents of shutdown_system() with