On Friday, 30 January 2015 at 22:06:34 UTC, Walter Bright wrote:
Time to button this up and release it. Remaining regressions:
https://issues.dlang.org/buglist.cgi?bug_severity=regression&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&list_id=192294&query_format=advanced
Please let's f
On Friday, 30 January 2015 at 20:47:33 UTC, Andrei Alexandrescu
wrote:
On 1/30/15 12:45 PM, Brad Roberts via Digitalmars-d wrote:
On 1/30/2015 12:39 PM, Jacob Carlborg via Digitalmars-d wrote:
On 2015-01-30 15:59, Andrei Alexandrescu wrote:
That would be nice. -- Andrei
I agree. I wouldn't
On Tuesday, 20 January 2015 at 12:23:32 UTC, Benjamin Thaut wrote:
2) Make export an attribute. If export is no longer an
protection level but instead an attribute this issue can easily
be solved by doing.
export public void templateFunc(T)()
{
someHelperFunc();
}
export private void someHe
On 12/02/2014 06:10 PM, Jacob Carlborg wrote:
DMD 2.066.1 is missing in the Digitalmars FTP. The release candidates
are present but the final release is missing. This breaks DVM.
By the way dmd.2.066.1.linux.zip is still missing :(.
http://ftp.digitalmars.com/dmd.2.066.1.linux.zip
http://down
On 12/02/2014 06:10 PM, Jacob Carlborg wrote:
DMD 2.066.1 is missing in the Digitalmars FTP. The release candidates
are present but the final release is missing. This breaks DVM.
By the way dmd.2.066.1.linux.zip is still missing :(.
http://ftp.digitalmars.com/dmd.2.066.1.linux.zip
http://down
On 01/28/2015 03:41 AM, Brad Roberts via Digitalmars-d wrote:
I spent the time today to read up on how to use s3 website redirects,
since s3 doesn't support symlinks. The only new requirement is for the
http client to follow a 301 redirect, which most do.
Can you please also add cache-contr
On 01/29/2015 03:58 PM, Andrei Alexandrescu wrote:
Travis set the User agent this way:
$ CURL_USER_AGENT="Travis-CI $(curl --version | head -n 1)"
Thanks! -- Andrei
Yes, I added that so you can keep track of the download numbers.
I'd be interested to know the travis-ci numbers, would also he
On 01/28/2015 03:41 AM, Brad Roberts via Digitalmars-d wrote:
I hope that makes you guys a little happier..
Thanks a lot, hope it's easy for you to maintain the redirects.
Would it also be possible to add a LATEST version?
http://downloads.dlang.org/releases/2.x/LATEST/dmd.LATEST.linux.zip
On 01/24/2015 12:38 PM, Benjamin Thaut wrote:
Why do we need a high-level wrapper?
Because it means the support if finished and stable, unlike the Window
DLL documentation which tells people what internal runtime functions to
use to make an incomplete DLL support work a little.
(P.S. didn
On 01/30/2015 05:32 AM, Craig Dillabaugh wrote:
It seems like its been too long since I posted asking for GSOC help.
I was just about to ask how things are going :).
Thanks a lot, the page looks much better than in recent years.
http://wiki.dlang.org/GSOC_2015_Ideas
1) I need a volunteer for
On 01/22/2015 10:21 PM, Andrei Alexandrescu wrote:
While working on the new site menus I was copying std modules by hand -
and boy, there's just so much work to be done. Streams, json, encoding,
mmfile, outbuffer, signals, socket, socketstream, xml, zip - all that
stuff, maybe a third of the stan
On 01/28/2015 09:12 AM, Mike wrote:
Note that D has 3 built-in types: exceptions, dynamic arrays, and
associative arrays, that may be difficult to use without the GC:
http://dlang.org/builtin.html.
4 actually, if you count delegate closures.
http://dlang.org/function.html#closures
On Thursday, 29 January 2015 at 13:24:36 UTC, Benjamin Thaut
wrote:
module c:
SomeTemplate!uint var3; // will this use instaction from b? Or
instanciate itself?
That's the first instantiation with uint. If you mean float, then
it will instatiate the template when compiled individually and
us
On 01/24/2015 11:47 AM, Benjamin Thaut wrote:
I tried really hard but I'm not able to find a link in the menu that
leads to the following page: http://dlang.org/dll-linux.html
Is that intentional? In my opinion this is a pretty central topic which
should appear in the sub-menu "D Reference".
Ki
On Friday, 19 December 2014 at 16:45:40 UTC, Ola Fosheim Grøstad
wrote:
Yes, but it would be easy to define some focused goals for each
release and refuse to touch stuff that belongs to a later
release. E.g.
http://wiki.dlang.org/Agenda
On 01/12/2015 09:55 PM, Steven Schveighoffer wrote:
e.g. http://dlang.org/dmd-osx.html
I can get to this page by searching google, but the menu on the left has
eliminated it. See here: http://dlang.org/download.html
Why?
Accidentally, because of too much macro magic.
https://github.com/D-Prog
https://issues.dlang.org/show_bug.cgi?id=3749
On Thursday, 1 January 2015 at 16:56:24 UTC, Manu via
Digitalmars-d wrote:
Does anyone know how to fix this? Can we please do so? It's
been a
problem for like 5 years it seems.
It's a bit insane that we can't resolve any non-linear
functions at
compile time.
Oh, we got yl2x recently [1].
So,
On Monday, 12 January 2015 at 22:17:57 UTC, Walter Bright wrote:
To defend that argument we'd first have to fix our own codegen.
https://issues.dlang.org/show_bug.cgi?id=12442
That issue has nothing to do with exception handling vs error
codes.
If you start to discuss register allocation tha
On Monday, 12 January 2015 at 22:54:08 UTC, Dicebot wrote:
Which is equivalent to "don't use exceptions on servers" :)
Yes, I know, this is why any alternative approach is worth
interest.
I think error handling chains like Maybe!(Result) or
Either!(Error, Result) could be nicely implemented i
On Monday, 12 January 2015 at 21:41:48 UTC, Andrei Alexandrescu
wrote:
I can't believe I agree with everything bearophile just said
:o). -- Andrei
But we knew that already.
channel9.msdn.com/Shows/Going+Deep/C-and-Beyond-2012-Andrei-Alexandrescu-Systematic-Error-Handling-in-C
stackoverflow.com/
On Monday, 12 January 2015 at 21:11:44 UTC, Walter Bright wrote:
On 1/12/2015 6:57 AM, Martin Nowak wrote:
The general solution in functional programming is error
chaining.
An example, C is a function that reads in lines of a program
and B is a function
that takes all those lines and counts wo
On 01/11/2015 06:28 PM, Andrei Alexandrescu wrote:
I don't think the CSS would be enough. The "title" is "Module xxx.yyy".
I only need to format "xxx.yyy" in code font. How do I do that? -- Andrei
Here is the right place.
https://github.com/D-Programming-Language/dlang.org/blame/dbcdbe39cdb0c0e
On Monday, 12 January 2015 at 00:51:25 UTC, Walter Bright wrote:
On 1/11/2015 5:06 AM, Dicebot wrote:
What is your opinion of approach advertised by various
functional languages and
now also Rust? Where you return error code packed with actual
data and can't
access data without visiting error c
On Monday, 12 January 2015 at 01:53:20 UTC, Brian Schott wrote:
On Saturday, 10 January 2015 at 20:18:03 UTC, Walter Bright
wrote:
Has someone made a dfmt, like http://gofmt.com/ ?
https://github.com/Hackerpilot/dfmt
The above is the work of one afternoon and not well tested.
Thanks Brian,
On 01/09/2015 10:28 AM, Manu via Digitalmars-d wrote:
I'm looking at another potential opportunity to get D into the office,
but the target's for this particular project are NaCL and/or
Emscripten.
I was gonna start hacking around to see what the limitations are with
Emscripten on D code tonight
On 01/10/2015 01:52 PM, Jacob Carlborg wrote:
On 2015-01-10 13:36, Martin Nowak wrote:
The idea isn't bad, but the performance will suck. This is generally
known as N+1 query, only that this is even worse, as each field is
queried individually.
Since the "all" method was called I would assume
On 01/10/2015 01:36 PM, Martin Nowak wrote:
The idea isn't bad, but the performance will suck. This is generally
known as N+1 query, only that this is even worse, as each field is
queried individually.
Here is a sketch for an optimal solution. I'm actually eagerly waiting
that someone finally i
On 01/10/2015 11:20 AM, Jacob Carlborg wrote:
On 2015-01-10 07:46, DaveG wrote:
I might be crazy, but it seems like the compiler has all the information
necessary to figure this out and it would make user code simpler, less
error prone, and more efficient. So does anybody have any idea on how to
On Wednesday, 7 January 2015 at 08:46:41 UTC, Vladimir Panteleev
wrote:
* I still have reservations about using Disqus.
I'm quite happy with the self hosted isso comments on my blog.
https://code.dawg.eu/reducing-vibed-turnaround-time-part-2-less-compiling.html#isso-thread
On 01/09/2015 09:29 PM, Tobias Pankrath wrote:
In this case there is a that is 16px wide and
occupies exactly the space you want to get rid of. It only shows up when
viewing the HTML using the Chrome developer tools (F12). It's not in the
page source.
It's highlighted as D source.
On 01/09/2015 07:35 PM, Andrei Alexandrescu wrote:
Maybe Calypso could be used for that? -- Andrei
What's calypso, can't find anything.
On Thursday, 8 January 2015 at 12:18:37 UTC, Steven Schveighoffer
wrote:
One thing that may be misleading about this -- our headers
don't include *everything* from C-land.
What's missing? They should just match their C counterparts.
On 01/05/2015 06:18 PM, Benjamin Thaut wrote:
That won't work. Not only the allocations are important but the pointers
between them as well. Your proposed solution would only work if all
pointers within a D program are known and could be recorded.
And I'm also interested in the type information
On 01/05/2015 11:26 AM, Benjamin Thaut wrote:
If you are interrested I might be able to branch of a old revision and
make it compile with the latest dmd again.
I'm interested in realistically simulating your allocation patterns.
That includes types and allocation sizes, allocation order, lifeti
On 01/05/2015 02:59 AM, Craig Dillabaugh wrote:
Do you feel the current posting on the Wiki accurately best reflects
what work needs to be done on this project.
Yeah, it's pretty good.
I've thrown out the hosted ARM project (AFAIK gdc and ldc are almost
done) and filled in some details for the
On 01/05/2015 04:38 AM, Mike wrote:
I forgot to mention in my last post your proposal for moving TypeInfo to
the runtime [1] is also one of the changes I had in mind. It would be an
excellent start, an important precedent, and would avoid the ridiculous
TypeInfo-faking hack necessary to get a bui
On 01/05/2015 04:50 AM, Mike wrote:
Exactly, that's good example.
Can we please file those as betterC bugs in https://issues.dlang.org/.
If we sort those out, it will be much easier next time.
On 01/04/2015 04:50 AM, Mike wrote:
On Saturday, 3 January 2015 at 14:14:42 UTC, Adam D. Ruppe wrote:
What changes did you have in mind? When I played with it, it was
mostly using the C-like subset, but I still think it was worth it
because bits like operator overloading and slicing are really c
On 01/04/2015 09:31 AM, Joakim wrote:
The notion is that individual developers could work on patches to fix
bugs or add features to ldc/druntime/phobos then sell those closed
patches to paying customers. After enough time has passed, so that
sufficient customers have adequately paid for the wor
On Sunday, 4 January 2015 at 06:04:38 UTC, Manu via Digitalmars-d
wrote:
I wonder if the code can still run against the builtin GC to
reproduce
the original problem?
OK, will have a look.
On Sunday, 4 January 2015 at 15:02:39 UTC, anonymous wrote:
On Sunday, 4 January 2015 at 05:24:09 UTC, Martin Nowak wrote:
It requires a `final bool opEquals(SameClass other)` method to
avoid the virtual call.
`final bool opEquals(Object)` is enough, no?
No, then you'd still need a dynamic c
I'd like to have a few more real world GC benchmarks in druntime.
The current ones are all rather micro-benchmarks, some of them don't
even create garbage.
So if someone has a program that is heavily GC limited, I'd be
interested in seeing that converted to a benchmark.
Made the start with o
On 01/04/2015 06:16 AM, Martin Nowak wrote:
+1 definitely makes sense, can you file an enhancement request
It requires a `final bool opEquals(SameClass other)` method to avoid the
virtual call.
On 01/04/2015 04:23 AM, anonymous wrote:
I see one fundamental source of overhead: The types degenerate to
Object, resulting in virtual calls that could be avoided. Maybe it'd be
worthwhile to templatize object.opEquals: `bool opEquals(A, B)(A a, B b)`.
+1 definitely makes sense, can you file a
On 12/31/2014 07:17 AM, Manu via Digitalmars-d wrote:
And even then, passing by value in not something you would do! Why
would you ever pass some big struct by value?
Sure if it's an rvalue.
On 01/04/2015 12:45 AM, Martin Nowak wrote:
Sure, someone should make a pull and implement opEquals for the Address
classes, maybe also opHash.
In the meantime addr1.tupleof == addr2.tupleof is a useful workaround,
but it can't handle polymorphism.
On 01/03/2015 05:42 PM, Tobias Pankrath wrote:
Could anyone clarify what the actual and intended behaviour is?
This [1] is the implementation and it calls opEquals. If that's not
overriden, the default [2] will use identity comparison.
[1]:
https://github.com/D-Programming-Language/druntime
https://github.com/Hackerpilot/Dscanner
On Saturday, 3 January 2015 at 16:33:56 UTC, Jonathan Marler
wrote:
So what is the right way to compare the contents of 2 classes?
I thought it was to implement an opEquals method. It pains me
to see people using the toAddrString function to compare
Address classes:( This is so inefficient a
I'm currently working on optimizing the GC marking code and I'm
having quite some problems with the inline decisions of the
compiler.
The compiler can't make good decisions here, because it lacks
information about which branches are executed rarely.
Would be nice to have @noinline, @forceinline
On Wednesday, 31 December 2014 at 19:50:49 UTC, Andrei
Alexandrescu wrote:
Hello,
In wake of the recent discussions on improving ddoc syntax
we're looking at doing something about it. Please discuss any
ideas you might have here. Thanks!
Quite often pull requests for the changelog [0] conta
On Friday, 2 January 2015 at 12:40:41 UTC, Daniel Murphy wrote:
You should wrap, unless we want to make _aaRange part of the
stable api.
Yep, please don't rely on runtime internals.
Wrapping front can be inlined and optimized.
On Thursday, 25 December 2014 at 14:55:32 UTC, Xinok wrote:
On Thursday, 25 December 2014 at 10:52:07 UTC, Martin Nowak
wrote:
On Saturday, 20 December 2014 at 22:11:35 UTC, Xinok wrote:
(1) We need a precise garbage collector. The fact that a
garbage-collected language experiences memory leaks
On Saturday, 20 December 2014 at 22:11:35 UTC, Xinok wrote:
I think the problem of memory management can be reduced to two
points:
(1) The garbage collector for D is sub-par.
I want to try out a few obvious things in the next couple of
weeks.
- better predictable memory access during markin
On Saturday, 20 December 2014 at 20:14:21 UTC, Ola Fosheim
Grøstad wrote:
1. A well thought out ownership system to replace GC with
compiler protocols/mechanisms that makes good static analysis
possible and pointers alias free. It should be designed before
"scope" is added and a GC-free runtim
On Tuesday, 23 December 2014 at 17:34:29 UTC, Dmitry Olshansky
wrote:
- final decision on @property
That one is easy, there is already a semi-offical decision.
http://wiki.dlang.org/DIP23
On Monday, 22 December 2014 at 09:05:03 UTC, Peter Alexander
wrote:
On Saturday, 20 December 2014 at 17:40:06 UTC, Martin Nowak
wrote:
Just wondering what the general sentiment is.
For me it's these 3 points.
- tuple support (DIP32, maybe without pattern matching)
- working import, protection
On Sunday, 21 December 2014 at 12:48:42 UTC, Dicebot wrote:
On Sunday, 21 December 2014 at 12:26:04 UTC, Jacob Carlborg
wrote:
On 2014-12-21 10:46, Dicebot wrote:
Stuff that immediately comes to my mind:
- some way to define implicit conversion from literals (done
at CT)
Any ideas on that?
On Monday, 22 December 2014 at 11:06:13 UTC, Francesco Cattoglio
wrote:
On Saturday, 20 December 2014 at 20:13:31 UTC, weaselcat wrote:
On Saturday, 20 December 2014 at 17:40:06 UTC, Martin Nowak
wrote:
Unique! and RefCounted! in a usable state.
+1
No RefCounted classes and non-reentrant GC
On Saturday, 20 December 2014 at 19:22:05 UTC, safety0ff wrote:
On Saturday, 20 December 2014 at 17:40:06 UTC, Martin Nowak
wrote:
Just wondering what the general sentiment is.
Multiple alias this (DIP66 / #6083.)
It's already in :), at least the DIP just got approved.
Would it really have
We lost a big opportunity last year, so let's be better prepared
this time.
Application for organizations starts in 6 weeks on Feb 9,
deadline is Feb 20.
Any volunteer for managing the application?
There is a wiki page as a starting point
http://wiki.dlang.org/GSOC_2015_Ideas.
The ideas need
On Monday, 22 December 2014 at 11:55:36 UTC, Kagamin wrote:
- delegates is another type system hole, if it's not going to
be fixed, then it should be documented
We did fix a few things there, are the rest filed in Bugzilla?
- members of Object
???
- evaluate contracts at the caller side
-
On Wednesday, 24 December 2014 at 10:35:46 UTC, Paolo Invernizzi
wrote:
On Wednesday, 24 December 2014 at 02:38:02 UTC, Andrei
Alexandrescu wrote:
On 12/20/14 9:39 AM, Martin Nowak wrote:
Shared semantics and improving multithreading also come to
mind. -- Andrei
O God! +1000 ;-P
True, a DI
On Tuesday, 23 December 2014 at 15:49:46 UTC, Andrei Alexandrescu
wrote:
Congratulations, Igor! -- Andrei
Good news, congratulations Igor.
On Saturday, 20 December 2014 at 19:51:18 UTC, Benjamin Thaut
wrote:
Am 20.12.2014 18:39, schrieb Martin Nowak:
Shared library support on Windows ;-)
That's not really a language thing, but indeed important.
On Saturday, 20 December 2014 at 18:42:52 UTC, Vic wrote:
- find all features that are not being maintained or are just
top heavy and deprecate.
- find features that should or could be downstream, and
deprecate.
Any particular suggestions?
On Wednesday, 24 December 2014 at 22:52:12 UTC, Dicebot wrote:
On Wednesday, 24 December 2014 at 22:12:02 UTC, Andrei
Alexandrescu wrote:
An emerging pattern (which Walter will effect for dip69) is to
initially make it opt-in as a flag:
dip -dip69 test.d
Great!
+1
Just wondering what the general sentiment is.
For me it's these 3 points.
- tuple support (DIP32, maybe without pattern matching)
- working import, protection and visibility rules (DIP22, 313, 314)
- finishing non-GC memory management
On 12/20/2014 06:12 PM, Martin Nowak wrote:
On 12/17/2014 09:45 AM, Manu via Digitalmars-d wrote:
Other languages do much less than D which is a full-blown C++ replacement.
We've made huge progress in the past few years
Most important, we started to grow an ecosystem.
http://code.dlang.org/
On 12/17/2014 09:45 AM, Manu via Digitalmars-d wrote:
Well... when? I've been here 6 years. When can I start to use D for my work?
Other languages seem to have a higher velocity. Are we fighting a losing battle?
Other languages do much less than D which is a full-blown C++ replacement.
We've ma
On 12/15/2014 10:12 AM, Walter Bright wrote:
Would it work if I deleted the tags from the test branch?
Deleting the dub.json on the test branch should work.
But you can also leave things as they are, the test branch isn't available.
http://code.dlang.org/packages/dmdscript
On 12/15/2014 09:31 AM, Jacob Carlborg wrote:
I've complained about this before. As far as I know it's not currently
possible. I would rather tell dub myself which versions are available.
Not making all tags available that match a pattern.
Well here is the code
https://github.com/D-Programmin
On 12/13/2014 02:53 AM, Walter Bright wrote:
Dmitry Olshansky has graciously ported DMDScript (a Javascript engine
written in D) to D2.
https://github.com/DigitalMars/DMDScript
I have been trying to get it into dub, but have been stalled by the
following when I attempt to register:
Repos
On 12/14/2014 09:37 AM, Manu via Digitalmars-d wrote:
Sadly, I failed to create a new commercial D user this week, and I'm
really disappointed.
It was rejected for exactly the same practical reasons I've been saying forever.
Doesn't surprise me too much to be honest. We aren't there yet and I'm
On 12/14/2014 09:37 AM, Manu via Digitalmars-d wrote:
The real trouble hit when vibe.d's WebSocket support didn't work as
advertised; it crashed in various circumstances, and debugging was
impossible.
Please file that one https://github.com/rejectedsoftware/vibe.d/issues.
What browser did you u
The current issue is if I build a dynamic library with DUB and call
externals form another application, and my D code
allocates anything on heap, the calling process crashes with
SIGSEV.
Don't forget to link against libphobos2.so using -defaultlib=libphobos2.so.
Cross post from the D.announce newsgroup, to reach a broader audience.
http://forum.dlang.org/post/m6b7r2$18ri$1...@digitalmars.com
On 12/14/2014 03:50 PM, Gabor Mezo wrote:
Hello,
I've created a simple db dynamic lib project.
https://github.com/D-Programming-Language/dub/issues/352
On 12/12/2014 06:13 PM, Martin Nowak wrote:
No, you don't want to accept the answer. That's slightly different than
not getting none.
Let me amend that I'm glad you didn't run away and are still working on
separating kernel specific from libc specific stuff. That will help us
to mitigate the
On 12/12/2014 06:13 PM, Martin Nowak wrote:
On 12/12/2014 04:47 PM, Joakim wrote:
I asked about this on github but didn't get a good answer, so I'm asking
here. What's with all the repeated OS blocks in druntime?
No, you don't want to accept the answer. That's slightly different than
not gett
On 12/12/2014 04:47 PM, Joakim wrote:
I asked about this on github but didn't get a good answer, so I'm asking
here. What's with all the repeated OS blocks in druntime?
No, you don't want to accept the answer. That's slightly different than
not getting none.
https://github.com/D-Programmin
On 12/12/2014 01:15 PM, Tobias Pankrath wrote:
Actually he dismisses D in his first video for being too much
like C++.
What do you usually do when learning a new programming language?
Right, write a small program. Apparently he ruled out all 3 candidates
by looking at the front page of their w
On 12/11/2014 10:34 PM, Walter Bright wrote:
D already does this. It's been said before, Jonathan is reinventing D,
piece by piece :-)
What does that mean, it's been said?
Didn't anyone actually try to tell him about D?
On 12/12/2014 11:42 AM, bearophile wrote:
Martin Nowak:
OK, I think that it will be enough to add a Phobos function like this
(what's the right Phobos module to put it?)
Did you just volunteer to make a pull :)?
As usual, having a problem to find the right place myself.
Would put it close to u
On 12/12/2014 10:54 AM, bearophile wrote:
This code:
struct Vec { float x = 1, y = 5, z = 9; }
auto v = new Vec(void);
Means having defined a struct with explicitly statically defined fields,
and then allocate one of it on the heap without initializing its fields.
It's equivalent to:
auto v = c
On 12/11/2014 03:45 PM, Tobias Pankrath wrote:
std.container.Array is shadowed by std.container.Array!bool.
redBlackTree shadows RedBlackTree as well.
We fixed that issue already, please have a look at the preview.
https://dlang.dawg.eu/library/index.html
https://dlang.dawg.eu/library-prerelea
On 03/10/2014 03:56 PM, Andrei Alexandrescu wrote:
All: how does one turn off css hyphenation?
Andrei
You're again using that crappy JS hyphenation?
Last time we had a performance problem with it, I wrote this super
efficient D library http://code.dlang.org/packages/hyphenate.
It could easily
On 12/12/2014 02:05 AM, Martin Nowak wrote:
You're again using that crappy JS hyphenation?
No, you don't it's css hyphenation. Sorry for the tone.
On Thursday, 11 December 2014 at 12:22:46 UTC, Martin Nowak wrote:
Already submitted a bunch of pulls.
https://github.com/D-Programming-Language/dlang.org/pulls?q=is%3Apr+author%3AMartinNowak+is%3Aclosed
I'd be thankful for any help on that.
Cloning dlang.org and running make -f posix.mak shoul
What's up with this new website design ?
Drafts looked good.
Yeah, draft looks good, but this didn't got the priority and
support it deserves.
My plan is to incrementally improve the current website until it
looks reasonable.
Already submitted a bunch of pulls.
You can see a preview here http
On 12/10/2014 07:30 AM, Shammah Chancellor wrote:
I think meetups are a great way to evangelize.
And to colaborate
On 12/09/2014 05:22 PM, John Colvin wrote:
which of course Kenji already has a pull for, less than 3 hours later :)
It's right on time, it's right on time
On 12/08/2014 06:20 PM, John Colvin wrote:
To conceptually get what it's doing here, the trick is that it's
offsetting the values so as to simulate unsigned comparisons using
signed instructions.
All too easy, but would've taken me a pen and paper to realize :).
On 12/08/2014 06:05 PM, John Colvin wrote:
Well gcc gives me:
Tried that with dmd, it gave me.
bug.d(5): Error: incompatible types for ((a) >= (l)):
'__vector(ulong[4])' and '__vector(ulong[4])'
bug.d(5): Error: incompatible types for ((a) < (h)):
'__vector(ulong[4])' and '__vector(ulong[4])
On 12/08/2014 05:57 PM, ponce wrote:
This doesn't work if vhigh - vlow spans a too large area.
It won't unless you allocate more than 4GB of RAM.
On 12/08/2014 05:55 PM, John Colvin wrote:
I don't quite understand what you mean by "save one conditional".
Instead of
if (v >= low && v < high)
it's
if (cast(size_t)(v - low) < size)
So there is only one branch.
There are other ways to eliminate one branch, for example this.
if ((v >=
On 12/08/2014 06:21 PM, Etienne wrote:
Are you using it for the binary search part (find pool) ?
Nope the binary search is surprisingly fine, but I had it on my list of
subjects for quite a while too.
On Monday, 8 December 2014 at 16:32:50 UTC, Martin Nowak wrote:
Usually (scalar) I'd use this, which makes use of unsigned wrap
to safe one conditional
immutable size = cast(ulong)(vhigh - vlow);
if (cast(ulong)(v0 - vlow) < size) {}
if (cast(ulong)(v1 - vlow) < size) {}
over
if (v0 >= vlow &
I want to do bounds checking of 2 (4 on avx) ulongs (64-bit) at a time.
ulong2 vval = [v0, v1];
ulong2 vlow = [low, low];
ulong2 vhigh = [high, high];
int res = PMOVMSKB(vval >= vlow & vval < vhigh);
I figured out sort of a solution, but it seems way too complicated,
because there is only sign
501 - 600 of 767 matches
Mail list logo