Listing downloads number in dub registry

2016-12-24 Thread aberba via Digitalmars-d
Currently, its hard to choose a lib because there is no way of knowing how many people use it.

Re: Listing downloads number in dub registry

2016-12-24 Thread Seb via Digitalmars-d
On Saturday, 24 December 2016 at 08:41:26 UTC, aberba wrote: Currently, its hard to choose a lib because there is no way of knowing how many people use it. This should have been opened at the dub-registry repo ;-) In particular your request already exists, see e.g. https://github.com/dlang/dub

Re: ModuleInfo, factories, and unittesting

2016-12-24 Thread Jacob Carlborg via Digitalmars-d
On 2016-12-23 18:12, Andrei Alexandrescu wrote: It looks like a solid traditional approach. It would be great to explore approaches where D's unique features would bring a strategic advantage. I had hoped that D's unique features good be used on top of that low level library. -- /Jacob Carl

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread John Colvin via Digitalmars-d
On Saturday, 24 December 2016 at 02:23:53 UTC, Chris Wright wrote: Appendix A: templates that would receive 'with(import foo)' in Phobos. I used a relatively simple regex to look for this. If someone put more than one line between a template and its constraints, or comments with certain forma

Re: ModuleInfo, factories, and unittesting

2016-12-24 Thread Jacob Carlborg via Digitalmars-d
On 2016-12-23 18:09, Andrei Alexandrescu wrote: Well clearly some changes in the compiler and/or runtime could bring us to where we want to be. Yeah, something like RTInfo but for modules. There's already an issue reported for this since a couple of years ago [1]. [1] https://issues.dlang.o

Re: ModuleInfo, factories, and unittesting

2016-12-24 Thread Jacob Carlborg via Digitalmars-d
On 2016-12-23 16:09, Adam D. Ruppe wrote: sometimes i confess i want to write a new druntime. maybe i'd call it "dango" Hehe, druntime is the only part that was shared between Tango and Phobos/druntime for D2. -- /Jacob Carlborg

Re: ModuleInfo, factories, and unittesting

2016-12-24 Thread Jacob Carlborg via Digitalmars-d
On 2016-12-23 15:20, Adam D. Ruppe wrote: Wouldn't it just be glorious if that magically printed: test.d(4): Assertion failure (a == b) is false a = 0 b = 1 Or if there was a language feature that allowed us to do this in a library, and a bunch of other things. I wonder what t

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Andrei Alexandrescu via Digitalmars-d
On 12/23/2016 09:23 PM, Chris Wright wrote: [abbreviated below] Upon more investigation, I see a large discrepancy between the findings of DIP1005 and yours. So there are a number of claims here, which I'll summarize: tldr: the performance impact of this DIP would be too small to easily meas

Re: ModuleInfo, factories, and unittesting

2016-12-24 Thread Seb via Digitalmars-d
On Saturday, 24 December 2016 at 09:31:42 UTC, Jacob Carlborg wrote: On 2016-12-23 15:20, Adam D. Ruppe wrote: Wouldn't it just be glorious if that magically printed: test.d(4): Assertion failure (a == b) is false a = 0 b = 1 Or if there was a language feature that allowed us

Re: Optimization problem: bulk Boolean operations on vectors

2016-12-24 Thread Johan Engelen via Digitalmars-d
On Saturday, 24 December 2016 at 00:04:48 UTC, Walter Bright wrote: On 12/23/2016 3:35 PM, Johan Engelen wrote: On Friday, 23 December 2016 at 22:11:31 UTC, Walter Bright wrote: enum SIZE = 1; void foo(int* a, int* b) { int* atop = a + 1000; // should be `a + SIZE`, right? ptr

[OT] Screenshot of D program in the latest issue of Ct magazine

2016-12-24 Thread Nemanja Boric via Digitalmars-d
I thought I see familiar name :-) http://imgur.com/a/TqGdj

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Stefan Koch via Digitalmars-d
On Saturday, 24 December 2016 at 09:34:03 UTC, Andrei Alexandrescu wrote: (I confirm that importing std.traits, std.meta, and std.range.primitives together takes 10ms.) while compiling std.traits 6 files are opened and read into memory, taking roughly 300 microseconds, which is not even 0.3% o

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Stefan Koch via Digitalmars-d
On Saturday, 24 December 2016 at 10:54:08 UTC, Stefan Koch wrote: 300 microseconds, which is not even 0.3% of the time spent. Lexing them requires additionally also about 300 microseconds. So Together that makes up 0.6% of the time spent. Of course in the above 3% and 6% are the right numbers.

Re: Optimization problem: bulk Boolean operations on vectors

2016-12-24 Thread Jacob Carlborg via Digitalmars-d
On 2016-12-24 02:06, hardreset wrote: How do I get the asm output? You cannot get the assembly output from DMD since it directly outputs object code. Do get the assembly you need to use a disassembler. -- /Jacob Carlborg

Re: Optimization problem: bulk Boolean operations on vectors

2016-12-24 Thread Walter Bright via Digitalmars-d
On 12/24/2016 2:28 AM, Johan Engelen wrote: Of course, but it's not codified in the source and thus the function is different from the foreach version. More importantly, I think it is broken. I find it very hard to reason about the ptrdiff_t version, because of all the potential overflows and th

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Andrei Alexandrescu via Digitalmars-d
On 12/24/2016 05:54 AM, Stefan Koch wrote: If that were made more lazy, we could import half of the world with noticing impact. That is what 1005 will bring. -- Andrei

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Stefan Koch via Digitalmars-d
On Saturday, 24 December 2016 at 14:08:48 UTC, Andrei Alexandrescu wrote: On 12/24/2016 05:54 AM, Stefan Koch wrote: If that were made more lazy, we could import half of the world with noticing impact. That is what 1005 will bring. -- Andrei A compiler enhancement can do this _without_ a la

Re: [OT] Screenshot of D program in the latest issue of Ct magazine

2016-12-24 Thread Sönke Ludwig via Digitalmars-d
Am 24.12.2016 um 11:35 schrieb Nemanja Boric: I thought I see familiar name :-) http://imgur.com/a/TqGdj Nice! Congrats to Vladimir for getting featured there!

String validation and sanitization dub lib

2016-12-24 Thread aberba via Digitalmars-d
I might be working on a project which might require a lot of string pathern validation and sanitization. Planning to make that into a dub package. Currently, I am not very familiar with regex in D but I did regex stuff long ago. So if anyone has code or interest for something like that, I wou

Re: Under 1000 opened bugs for Phobos

2016-12-24 Thread Andrei Alexandrescu via Digitalmars-d
On 11/03/2015 09:35 AM, Andrei Alexandrescu wrote: https://goo.gl/r24Izw Some of them are D1 only; I'll make an executive decision about those soon. Some of them have been fixed or obviated by recent improvements. And finally the bulk of them need a little work each to get them fixed. I'm think

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Andrei Alexandrescu via Digitalmars-d
On 12/24/16 9:20 AM, Stefan Koch wrote: On Saturday, 24 December 2016 at 14:08:48 UTC, Andrei Alexandrescu wrote: On 12/24/2016 05:54 AM, Stefan Koch wrote: If that were made more lazy, we could import half of the world with noticing impact. That is what 1005 will bring. -- Andrei A compile

Re: CTFE Status

2016-12-24 Thread Stefan Koch via Digitalmars-d
Some progress on && has been made. It can now be used within an if. It is only enabled if debug = andnd is given.

Re: CTFE Status

2016-12-24 Thread Stefan Koch via Digitalmars-d
On Saturday, 24 December 2016 at 16:10:04 UTC, Stefan Koch wrote: Some progress on && has been made. It can now be used within an if. It is only enabled if debug = andnd is given. This introduced a bug which is now fixed. Furthermore returning of 64bit integral values has now been enabled. I j

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Stefan Koch via Digitalmars-d
On Saturday, 24 December 2016 at 15:44:18 UTC, Andrei Alexandrescu wrote: On 12/24/16 9:20 AM, Stefan Koch wrote: On Saturday, 24 December 2016 at 14:08:48 UTC, Andrei Alexandrescu wrote: On 12/24/2016 05:54 AM, Stefan Koch wrote: If that were made more lazy, we could import half of the world

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Chris Wright via Digitalmars-d
On Sat, 24 Dec 2016 09:20:19 +, John Colvin wrote: > There are a lot of templates in Phobos that never use the template > keyword. The proposal doesn't only apply to constraints, it applies to > the whole declaration. If you have a better way of estimating the impact, I'd love to see it.

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Chris Wright via Digitalmars-d
On Sat, 24 Dec 2016 04:34:03 -0500, Andrei Alexandrescu wrote: > Upon more investigation, I see a large discrepancy between the findings > of DIP1005 and yours. There's no discrepancy. In part, you are misinterpreting most of what I said. In part, you are assuming that imports on non-template de

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Stefan Koch via Digitalmars-d
On Saturday, 24 December 2016 at 17:52:04 UTC, Chris Wright wrote: The minimum isn't terribly useful because it gets to the point of testing the process scheduler and IO more than the compiler. If we want numbers that we can trust on the low end, we'll need to put timing information into the

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Andrei Alexandrescu via Digitalmars-d
On 12/24/2016 12:52 PM, Chris Wright wrote: On Sat, 24 Dec 2016 04:34:03 -0500, Andrei Alexandrescu wrote: Upon more investigation, I see a large discrepancy between the findings of DIP1005 and yours. There's no discrepancy. In part, you are misinterpreting most of what I said. Yah, I suspe

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Andrei Alexandrescu via Digitalmars-d
On 12/24/2016 12:45 PM, Stefan Koch wrote: I just read over the dip, and it is a giant wall of text. I cannot really make heads or tails of it. When it was shorter, people complained it had too little information. If you're using the text form, the nicey formatted version may be helpful: htt

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Joakim via Digitalmars-d
On Saturday, 24 December 2016 at 17:53:04 UTC, Chris Wright wrote: On Sat, 24 Dec 2016 09:20:19 +, John Colvin wrote: There are a lot of templates in Phobos that never use the template keyword. The proposal doesn't only apply to constraints, it applies to the whole declaration. If you hav

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Andrei Alexandrescu via Digitalmars-d
On 12/24/2016 02:03 PM, Andrei Alexandrescu wrote: With no top-level imports and all imports hoisted into inline imports, the fixed cost of importing one module will be that module alone. I'd really like to clarify this because that's where scalability comes from. The moment you need to open a

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Andrei Alexandrescu via Digitalmars-d
On 12/24/2016 02:16 PM, Joakim wrote: On Saturday, 24 December 2016 at 17:53:04 UTC, Chris Wright wrote: On Sat, 24 Dec 2016 09:20:19 +, John Colvin wrote: There are a lot of templates in Phobos that never use the template keyword. The proposal doesn't only apply to constraints, it applies

[DIP1005] Unused imports in with(import) declarations: leave alone of flag as errors?

2016-12-24 Thread Andrei Alexandrescu via Digitalmars-d
Consider: with (import std.stdio) int fun(int x/*, File f*/) { // f.writeln("In: ", x); return x * x; } Such situations occur during refactorings and code evolution. The import is no longer used. Should the compiler flag that as an error, or leave it be? Andrei

Re: Multiple return value as requirements for safety and performance

2016-12-24 Thread Ilya Yaroshenko via Digitalmars-d
On Tuesday, 20 December 2016 at 17:28:49 UTC, Stefan Koch wrote: On Tuesday, 20 December 2016 at 17:15:53 UTC, Ilya Yaroshenko wrote: Are they already CTFEable? I have not seen an anounce, sorry They have been for years now. Of course only pointers from a CTFE context are valid at ctfe. The

Re: [DIP1005] Unused imports in with(import) declarations: leave alone of flag as errors?

2016-12-24 Thread Tourist via Digitalmars-d
On Saturday, 24 December 2016 at 20:32:58 UTC, Andrei Alexandrescu wrote: Consider: with (import std.stdio) int fun(int x/*, File f*/) { // f.writeln("In: ", x); return x * x; } Such situations occur during refactorings and code evolution. The import is no longer used. Should the compi

It's a Christmas miracle: main no longer runs after unittests

2016-12-24 Thread Andrei Alexandrescu via Digitalmars-d
https://github.com/dlang/druntime/pull/1724 Ho-ho-ho! Andrei

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Chris Wright via Digitalmars-d
On Fri, 23 Dec 2016 23:41:46 -0500, Andrei Alexandrescu wrote: > On 12/23/16 9:23 PM, Chris Wright wrote: >> The comparison to mach.d is a strawman. > > The mach.d is given as an example of the approach of breaking code into > fine-grained module. No comparison is made or implied. "Assuming modu

Re: [DIP1005] Unused imports in with(import) declarations: leave alone of flag as errors?

2016-12-24 Thread rikki cattermole via Digitalmars-d
On 25/12/2016 9:32 AM, Andrei Alexandrescu wrote: Consider: with (import std.stdio) int fun(int x/*, File f*/) { // f.writeln("In: ", x); return x * x; } Such situations occur during refactorings and code evolution. The import is no longer used. Should the compiler flag that as an error

Re: Under 1000 opened bugs for Phobos

2016-12-24 Thread Brad Roberts via Digitalmars-d
On 12/24/2016 7:24 AM, Andrei Alexandrescu via Digitalmars-d wrote: On 11/03/2015 09:35 AM, Andrei Alexandrescu wrote: https://goo.gl/r24Izw Replying to my own message from November 2015... well, right now we have 953 open bugs for Phobos. 500 is next! -- Andrei Progress is progress, but I pr

Re: D future ...

2016-12-24 Thread WebFreak001 via Digitalmars-d
On Thursday, 22 December 2016 at 04:47:06 UTC, Chris Wright wrote: CTFE ( Stefan is dealing with that ), Documentation, better Editor support... I think code-d could potentially be extended to install its dependencies, which would improve the situation there. It does already do that though :

Re: [DIP1005] Unused imports in with(import) declarations: leave alone of flag as errors?

2016-12-24 Thread Jonathan M Davis via Digitalmars-d
On Saturday, December 24, 2016 15:32:58 Andrei Alexandrescu via Digitalmars- d wrote: > Consider: > > with (import std.stdio) > int fun(int x/*, File f*/) > { > // f.writeln("In: ", x); > return x * x; > } > > Such situations occur during refactorings and code evolution. The import > is n

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Chris Wright via Digitalmars-d
On Sat, 24 Dec 2016 14:03:26 -0500, Andrei Alexandrescu wrote: > * Your post provided no description of the methodology used beyond > "relatively simple regex" to come up with the magic number 26, so I > tried to use interpretation. > > * There is no answer to "where is cmp on that list for exampl

Re: [DIP1005] Unused imports in with(import) declarations: leave alone of flag as errors?

2016-12-24 Thread ketmar via Digitalmars-d
On Saturday, 24 December 2016 at 20:32:58 UTC, Andrei Alexandrescu wrote: Such situations occur during refactorings and code evolution. The import is no longer used. Should the compiler flag that as an error, or leave it be? please, no. "this is a work for a linter", as Walter likes to say (s

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Chris Wright via Digitalmars-d
On Sat, 24 Dec 2016 14:10:30 -0500, Andrei Alexandrescu wrote: > On 12/24/2016 12:45 PM, Stefan Koch wrote: >> I just read over the dip, and it is a giant wall of text. >> I cannot really make heads or tails of it. > > When it was shorter, people complained it had too little information. It's no

Re: DIP10005: Dependency-Carrying Declarations is now available for community feedback

2016-12-24 Thread Chris Wright via Digitalmars-d
On Sat, 24 Dec 2016 17:45:35 +, Stefan Koch wrote: > I just read over the dip, and it is a giant wall of text. > I cannot really make heads or tails of it. > Maybe you could write the advantages you hit at in short bullet-point > form ? We add the syntax: with (import foo, bar, baz) SingleDec

Re: It's a Christmas miracle: main no longer runs after unittests

2016-12-24 Thread Adam D. Ruppe via Digitalmars-d
On Saturday, 24 December 2016 at 22:14:08 UTC, Andrei Alexandrescu wrote: https://github.com/dlang/druntime/pull/1724 The implementation is easy. The hard part is actually getting it past the "all breaking changes [except the ones i create] are evil" crowd.

Re: It's a Christmas miracle: main no longer runs after unittests

2016-12-24 Thread Swoorup Joshi via Digitalmars-d
On Saturday, 24 December 2016 at 22:14:08 UTC, Andrei Alexandrescu wrote: https://github.com/dlang/druntime/pull/1724 Ho-ho-ho! Andrei Nice, would be great to also have named unittest, so we can launch only specific ones instead of relying on third party libraries.

Re: It's a Christmas miracle: main no longer runs after unittests

2016-12-24 Thread Ignacious via Digitalmars-d
On Saturday, 24 December 2016 at 22:14:08 UTC, Andrei Alexandrescu wrote: https://github.com/dlang/druntime/pull/1724 Ho-ho-ho! Andrei Given that Christmas is one of the hugest fabrications in human history, I find this very difficult to believe! (or simply to cover all bases, quite easy t