Re: Comparing two AliasSeq

2017-03-24 Thread Yuxuan Shui via Digitalmars-d-learn
On Saturday, 25 March 2017 at 05:20:44 UTC, Jonathan M Davis wrote: On Saturday, March 25, 2017 04:57:26 Yuxuan Shui via Digitalmars-d-learn wrote: [...] An AliasSeq isn't really ever a type. AliasSeq!(int, float) is a list of types, not a type itself, and is expressions supports comparing

Re: Beta 2.074.0-b1

2017-03-24 Thread rikki cattermole via Digitalmars-d-announce
On 25/03/2017 6:33 AM, Jack Stouffer wrote: On Saturday, 25 March 2017 at 05:19:32 UTC, rikki cattermole wrote: On 24/03/2017 6:35 PM, Martin Nowak wrote: First beta for the 2.074.0 release. This release comes with plenty of phobos additions and a new std.experimental module.

Re: Beta 2.074.0-b1

2017-03-24 Thread Jack Stouffer via Digitalmars-d-announce
On Saturday, 25 March 2017 at 05:19:32 UTC, rikki cattermole wrote: On 24/03/2017 6:35 PM, Martin Nowak wrote: First beta for the 2.074.0 release. This release comes with plenty of phobos additions and a new std.experimental module. http://dlang.org/download.html#dmd_beta

Re: Comparing two AliasSeq

2017-03-24 Thread Jonathan M Davis via Digitalmars-d-learn
On Saturday, March 25, 2017 04:57:26 Yuxuan Shui via Digitalmars-d-learn wrote: > I see. I always thought tuple() is a type... > > So a tuple of types is a type, but a tuple of mixed types and > values is not a type. Doesn't seem very consistent. An AliasSeq isn't really ever a type.

Re: Beta 2.074.0-b1

2017-03-24 Thread rikki cattermole via Digitalmars-d-announce
On 24/03/2017 6:35 PM, Martin Nowak wrote: First beta for the 2.074.0 release. This release comes with plenty of phobos additions and a new std.experimental module. http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.074.0.html Please report any bugs at

Re: Comparing two AliasSeq

2017-03-24 Thread Yuxuan Shui via Digitalmars-d-learn
On Saturday, 25 March 2017 at 04:23:31 UTC, Jonathan M Davis wrote: On Saturday, March 25, 2017 03:25:27 Yuxuan Shui via Digitalmars-d-learn wrote: In this example: import std.range; template expandRange(alias R) if (isInputRange!(typeof(R))) { static if (R.empty)

Re: Comparing two AliasSeq

2017-03-24 Thread Jonathan M Davis via Digitalmars-d-learn
On Saturday, March 25, 2017 03:25:27 Yuxuan Shui via Digitalmars-d-learn wrote: > In this example: > > import std.range; > template expandRange(alias R) if (isInputRange!(typeof(R))) { > static if (R.empty) > alias expandRange = AliasSeq!(); > else > alias

Re: Comparing two AliasSeq

2017-03-24 Thread H. S. Teoh via Digitalmars-d-learn
On Sat, Mar 25, 2017 at 03:25:27AM +, Yuxuan Shui via Digitalmars-d-learn wrote: > In this example: > > import std.range; > template expandRange(alias R) if (isInputRange!(typeof(R))) { > static if (R.empty) > alias expandRange = AliasSeq!(); > else >

Re: RE: Are Gigantic Associative Arrays Now Possible?

2017-03-24 Thread dlangPupil via Digitalmars-d
On Friday, 24 March 2017 at 17:48:35 UTC, H. S. Teoh wrote: (In my case, though, B-trees may not represent much of an improvement, because I'm dealing with high-dimensional data that cannot be easily linearized to take maximum advantage of B-tree locality. So at some level I still need some

Comparing two AliasSeq

2017-03-24 Thread Yuxuan Shui via Digitalmars-d-learn
In this example: import std.range; template expandRange(alias R) if (isInputRange!(typeof(R))) { static if (R.empty) alias expandRange = AliasSeq!(); else alias expandRange = AliasSeq!(R.front(), expandRange!(R.drop(1))); } /// unittest {

Re: More exception classes into Phobos?

2017-03-24 Thread Adam D. Ruppe via Digitalmars-d
On Friday, 24 March 2017 at 19:38:14 UTC, H. S. Teoh wrote: Catching an Exception by message? That sounds like horrible code smell to me. Yes, it is. That's why I think exception strings are an antipattern. You should be making new classes, not new strings. But, D lets us have both worlds.

Re: Exporting template function instances to C

2017-03-24 Thread data pulverizer via Digitalmars-d-learn
On Friday, 24 March 2017 at 01:00:31 UTC, Nicholas Wilson wrote: On Thursday, 23 March 2017 at 19:46:43 UTC, data pulverizer wrote: On Thursday, 23 March 2017 at 17:58:21 UTC, H. S. Teoh wrote: On Thu, Mar 23, 2017 at 05:29:22PM +, data pulverizer via Thanks. Is there a less ham-handed

Re: Parameterized template value parameter

2017-03-24 Thread Nicholas Wilson via Digitalmars-d
On Friday, 24 March 2017 at 21:13:26 UTC, Yuxuan Shui wrote: On Friday, 24 March 2017 at 20:43:18 UTC, Dmitry Olshansky template A(alias str) if(is(typeof(str) : Char[], Char)){ alias Char = typeof(str[0]); // ... } One problem of this is that 'str' is not longer restricted to

Re: Yet another project with vibe.d

2017-03-24 Thread Jonathan M Davis via Digitalmars-d
On Friday, March 24, 2017 12:23:23 Chris via Digitalmars-d wrote: > I just wanted to say thank you for vibe.d, Sönke and Kai (for the > book). I use vibe.d for all new web projects, and it's great. > Less and less JS, more and more D. It's also very fast. > > The way we use it is that we set up

Re: relax disabled Final!T unary operators

2017-03-24 Thread Jonathan M Davis via Digitalmars-d
On Friday, March 24, 2017 11:00:20 H. S. Teoh via Digitalmars-d wrote: > All in all, it seems that Final, as currently implemented, really only > makes sense for class types. It seems to have glaring holes and > inconsistency problems with other types. (Just wait till I try it on a > union...

Re: Parameterized template value parameter

2017-03-24 Thread Yuxuan Shui via Digitalmars-d
On Friday, 24 March 2017 at 20:43:18 UTC, Dmitry Olshansky wrote: On 3/24/17 12:24 AM, Yuxuan Shui wrote: So I was trying to make my template take a value parameter, whose type is also a parameter to the template. e.g.: template A(Char[] str, Char); But dmd complains about 'Char' being

Re: Parameterized template value parameter

2017-03-24 Thread Dmitry Olshansky via Digitalmars-d
On 3/24/17 12:24 AM, Yuxuan Shui wrote: So I was trying to make my template take a value parameter, whose type is also a parameter to the template. e.g.: template A(Char[] str, Char); But dmd complains about 'Char' being undefined. I have to write: template A(Char, Char[] str); Which

[Issue 17274] New: No OS X .dmg file for DMD 2.074.0-b1

2017-03-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17274 Issue ID: 17274 Summary: No OS X .dmg file for DMD 2.074.0-b1 Product: D Version: D2 Hardware: x86 OS: Mac OS X Status: NEW Severity: enhancement

[Issue 17273] why is a const range not a range

2017-03-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17273 ag0ae...@gmail.com changed: What|Removed |Added Status|NEW |RESOLVED CC|

Re: More exception classes into Phobos?

2017-03-24 Thread H. S. Teoh via Digitalmars-d
On Fri, Mar 24, 2017 at 01:44:02AM +, Adam D. Ruppe via Digitalmars-d wrote: > On Friday, 24 March 2017 at 00:28:16 UTC, Walter Bright wrote: > > The string is what gets printed to the user like: > > > >"your password has to have at least one upper case character in > >it" > > > > In

Re: Learning programming with D - optimizing the entry point / the environment?

2017-03-24 Thread H. S. Teoh via Digitalmars-d
On Thu, Mar 23, 2017 at 06:48:32PM +, Adam D. Ruppe via Digitalmars-d wrote: > On Thursday, 23 March 2017 at 18:25:55 UTC, H. S. Teoh wrote: > > And BTW, that was written for a text console, so the only library > > needed was a terminal control library (which in theory could be > > dispensed

Re: Of the use of unpredictableSeed

2017-03-24 Thread H. S. Teoh via Digitalmars-d
On Tue, Mar 21, 2017 at 10:11:44PM +, sarn via Digitalmars-d wrote: > On Tuesday, 21 March 2017 at 10:27:27 UTC, Andrei Alexandrescu wrote: > > Thanks Yuxuan, sorry for missing this. Can we have this peer > > reviewed by 1-2 crypto experts? Thanks! -- Andrei > > By API, unpredictableSeed()

Re: bug in foreach continue

2017-03-24 Thread H. S. Teoh via Digitalmars-d-learn
On Thu, Mar 23, 2017 at 05:11:49PM +, Adam D. Ruppe via Digitalmars-d-learn wrote: > On Thursday, 23 March 2017 at 00:39:56 UTC, H. S. Teoh wrote: > > I'm still working on that. :-) > > Hey, can you at least put scare quotes around "static foreach" each > time it is used? There's no such

Dlang Boston Meetup - Hack-a-thon

2017-03-24 Thread Steven Schveighoffer via Digitalmars-d-announce
For those D enthusiasts living in or around Boston, I've scheduled a mini hack-a-thon for next Friday 3/31 in the Back Bay. Would be great to see you all there! Details here: https://www.eventbrite.com/e/dlang-boston-hack-a-thon-tickets-33151627410 I will cross post to meetup.com in a bit.

COM2D Wrapper

2017-03-24 Thread Nierjerson via Digitalmars-d-learn
I'd like to present the following D library I am working on: https://github.com/IllusionSoftware/COM2D It attempts to automate COM in D. It has some problems but does partially work. Those with a recent version of Adobe Photoshop and an interest in COM can try it out and make contributions

[Issue 17273] why is a const range not a range

2017-03-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17273 Sahmi Soulaïman (سليمان السهمي) changed: What|Removed |Added Keywords|

[Issue 17273] New: why is a const range not a range

2017-03-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17273 Issue ID: 17273 Summary: why is a const range not a range Product: D Version: D2 Hardware: x86 OS: Linux Status: NEW Severity: critical Priority: P1

Re: relax disabled Final!T unary operators

2017-03-24 Thread H. S. Teoh via Digitalmars-d
Another grey area (or more precisely, problematic area) with Final is dynamic arrays. To wit: Final!(int[]) arr; arr.length += 1;// correctly rejected arr.length = 10;// accepted - WAT? arr.ptr++; // correctly rejected arr.ptr =

Re: sdpc - Simple/Stupid D parser combinator

2017-03-24 Thread Yuxuan Shui via Digitalmars-d-announce
On Friday, 24 March 2017 at 17:53:14 UTC, Basile B. wrote: On Thursday, 23 March 2017 at 22:55:10 UTC, Yuxuan Shui wrote: [...] Thanks for sharing this but your project is not visible! Gitlab is a bit confusing because by default repositories are private. Go to your project setting(should

Re: RE: Are Gigantic Associative Arrays Now Possible?

2017-03-24 Thread H. S. Teoh via Digitalmars-d
On Fri, Mar 24, 2017 at 04:59:00PM +, dlangPupil via Digitalmars-d wrote: [...] > In addition to prevalence of random lookups, certain additional app > conditions and designs might make "gigantic AAs" more useful or > competitive with alternatives: > > 1. Use by programmers who need a data

Re: sdpc - Simple/Stupid D parser combinator

2017-03-24 Thread Basile B. via Digitalmars-d-announce
On Thursday, 23 March 2017 at 22:55:10 UTC, Yuxuan Shui wrote: GitLab: https://gitlab.com/yshui/sdpc Documents: https://yshui.gitlab.io/sdpc Dub: http://code.dlang.org/packages/sdpc I started this project ~1.8 years ago. It only took me a couple of weeks to write, and I learned a lot about D's

Re: Beta 2.074.0-b1

2017-03-24 Thread Martin Nowak via Digitalmars-d-announce
On 03/24/2017 06:35 PM, Martin Nowak wrote: > First beta for the 2.074.0 release. > > This release comes with plenty of phobos additions and a new > std.experimental module. > > http://dlang.org/download.html#dmd_beta > http://dlang.org/changelog/2.074.0.html Forgot to mention, the packages

Beta 2.074.0-b1

2017-03-24 Thread Martin Nowak via Digitalmars-d-announce
First beta for the 2.074.0 release. This release comes with plenty of phobos additions and a new std.experimental module. http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.074.0.html Please report any bugs at https://issues.dlang.org -Martin

Re: How to use C code in D

2017-03-24 Thread MGW via Digitalmars-d-learn
On Thursday, 23 March 2017 at 18:10:20 UTC, Dillen Meijboom wrote: Hi there, I'm learning D for a while because it's really easy to use C-code in D. The problem is that I don't really get how to deal with the data structures defined in C in D. Perhaps, it will be interesting to you. I

Re: RE: Are Gigantic Associative Arrays Now Possible?

2017-03-24 Thread dlangPupil via Digitalmars-d
On Friday, 24 March 2017 at 06:30:25 UTC, H. S. Teoh wrote: You have to keep in mind that one downside of hashtables is that they tend to be unfriendly towards caching hierarchies ... For certain applications, where key lookups are more-or-less random, this is the best you could do, but for

Re: The delang is using merge instead of rebase/squash

2017-03-24 Thread Martin Nowak via Digitalmars-d
On Tuesday, 21 March 2017 at 20:16:00 UTC, Atila Neves wrote: git rebase master my_branch git checkout master git merge --no-ff my_branch Yes, that's about what we aim for, rebase w/ --autosquash though, so that people can `git commit --fixup` new fixup commits to open PRs w/o leaving noise

Re: Multi-commit PRs vs. multiple single-commit PRs

2017-03-24 Thread Martin Nowak via Digitalmars-d
On Tuesday, 21 March 2017 at 12:49:22 UTC, Vladimir Panteleev wrote: On Tuesday, 21 March 2017 at 11:59:42 UTC, deadalnix wrote: Then it should have been 2 PR or more to begin with. Splitting PR in smaller ones is a good practice in general, This is probably true for many cases, but I don't

[Issue 15726] [REG2.068.0] forward reference error for circular classes, RefCounted

2017-03-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15726 --- Comment #5 from github-bugzi...@puremagic.com --- Commit pushed to stable at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/f429983efbeb78aa727827ae7d76a728996b4d4d Fix wrong fields.dim value from test13613. This is a

Re: Amper audio player for GNU/Linux and X11

2017-03-24 Thread ketmar via Digitalmars-d-announce
some updates: * region.txt support for skins; * reworked equalizer (smaller, faster); * background scanner for playlist items (Amper won't hang when adding alot of files to playlist anymore); * ID3v2 parser, so mp3s will have (some) metainfo too; * fully configurable global hotkeys (including

Re: How to use C code in D

2017-03-24 Thread Jesse Phillips via Digitalmars-d-learn
On Thursday, 23 March 2017 at 18:10:20 UTC, Dillen Meijboom wrote: Hi there, I'm learning D for a while because it's really easy to use C-code in D. The problem is that I don't really get how to deal with the data structures defined in C in D. D makes it easy to utilize C code, but there is

DMD Git master regression: disabled postblits during CTFE

2017-03-24 Thread Nordlöw via Digitalmars-d
The file https://github.com/nordlow/gmp-d/blob/master/src/gmp/z.d in my https://github.com/nordlow/gmp-d package errors during compilation with DMD Git master as z.d(2350,16): Error: struct gmp.z.MpZ is not copyable because it is annotated with @disable Specifically, this happens in the

Yet another project with vibe.d

2017-03-24 Thread Chris via Digitalmars-d
I just wanted to say thank you for vibe.d, Sönke and Kai (for the book). I use vibe.d for all new web projects, and it's great. Less and less JS, more and more D. It's also very fast. The way we use it is that we set up little vibe.d servers behind the scenes and redirect to them.

Re: Multi-commit PRs vs. multiple single-commit PRs

2017-03-24 Thread deadalnix via Digitalmars-d
On Friday, 24 March 2017 at 09:27:54 UTC, Vladimir Panteleev wrote: Yep, because of the misuse-worst-case arguments. Simple solutions that guard against such mistakes are welcome. E.g. we could allow squashing if all commits' commit messages except the first one's start with "[SQUASH] " or

Virtual nested classes and "this"

2017-03-24 Thread Arafel via Digitalmars-d-learn
Hi, I have been poking around with overriding internal classes, and after reading [1] it was actually not clear to me whether it could be done or not, so I started trying. The good news (for me, at least) is that it can mostly be done [2], whoever I have found a bit intriguing that I need

Re: Multi-commit PRs vs. multiple single-commit PRs

2017-03-24 Thread Vladimir Panteleev via Digitalmars-d
On Friday, 24 March 2017 at 05:56:57 UTC, Seb wrote: On Friday, 24 March 2017 at 05:10:54 UTC, Vladimir Panteleev wrote: I think that if you do not think that discussing this subject any further is worth your time, then you shouldn't allocate any of your time time towards it. As previously

Re: RE: Are Gigantic Associative Arrays Now Possible?

2017-03-24 Thread H. S. Teoh via Digitalmars-d
On Fri, Mar 24, 2017 at 12:27:00AM +, dlangPupil via Digitalmars-d wrote: > On Thursday, 23 March 2017 at 10:27:36 UTC, Ola Fosheim Grøstad wrote: > > > > Increasing the size of a hash table would be prohibitively > > expensive. You need a data-structure that can grow gracefully. > > Hi

Re: Multi-commit PRs vs. multiple single-commit PRs

2017-03-24 Thread Seb via Digitalmars-d
On Friday, 24 March 2017 at 05:10:54 UTC, Vladimir Panteleev wrote: I think that if you do not think that discussing this subject any further is worth your time, then you shouldn't allocate any of your time time towards it. As previously mentioned, I don't think the arguments presented here