Re: IDE - Coedit 2

2016-02-18 Thread Basile Burg via Digitalmars-d-announce

On Thursday, 18 February 2016 at 04:52:13 UTC, Andre Kostur wrote:

On 2016-02-17 12:19 PM, Jacob Carlborg wrote:

On 2016-02-17 14:18, Basile Burg wrote:

The few missing details to compile CE under OSX have been 
added today.
However it has to be build by the user, which might not be 
easy. I

cannot help with this (except for eventual bugfixes).


Can't you use Travis CI to build it if you don't have a Mac 
yourself?




I've been keeping an eye on building Coedit on OSX for a while 
now, but it blows up on launch.  The top bit of the stacktrace:

[...]
I'm not sure as to how to proceed from this though... :/


I'll try to follow and help here: 
https://github.com/BBasile/Coedit/issues/16
With the hope it'll succeed this time. You can post the stack 
trace there.


Travis might be used in the future.


Re: Qt's MOC getting replicated in D for Calypso

2016-02-18 Thread Elie Morisse via Digitalmars-d-announce

On Thursday, 18 February 2016 at 03:07:22 UTC, Ali Çehreli wrote:
Congratulations! Any project that can get rid of moc is a big 
achievement. :) Folks at CopperSpice had done the same in C++ 
with their Qt replacement:


  http://www.copperspice.com/

Ali


Nice! I've never heard of them, interesting how they proved the 
moc maintainer partly wrong.


On Thursday, 18 February 2016 at 03:36:20 UTC, ZombineDev wrote:

Congratulations! This is an extremely promising result!

BTW, what do you think about DMD's recent advancement in this 
area? Can you reuse some of this work for Calypso? When do you 
think you'll be ready to start upstreaming some of your work to 
LDC and/or DMD?


https://github.com/D-Programming-Language/dmd/pull/5261 - 
Parameter types should have namespace std mangling too


https://github.com/D-Programming-Language/dmd/pull/5262 - Add 
versioned-out branch to support new C++-11 implementations of 
std::string


https://github.com/D-Programming-Language/druntime/pull/1470 - 
Add catching C++ exception support to dwarfeh.d


https://github.com/D-Programming-Language/druntime/pull/1473 - 
add core.stdcpp.exception and core.stdcpp.typeinfo


https://github.com/D-Programming-Language/dmd/pull/5330 - fix 
Issue 15389 - extern(C++) forward referencing problem


https://github.com/D-Programming-Language/dmd/pull/5333 - fix 
Issue 15519 - Circular imports leads to fwd ref error with 
aliased imports


https://github.com/D-Programming-Language/dmd/pull/5342 - C++ 
EH: initial front end work


https://github.com/D-Programming-Language/dmd/pull/5361 - fix 
Issue 15579 - extern(C++) interfaces/multiple-inheritance


https://github.com/D-Programming-Language/dmd/pull/5372 - fix 
Issue 15610 - extern(C++) multiple inheritance - calling with 
wrong 'this' ptr


https://github.com/D-Programming-Language/dmd/pull/5397 - fix 
Issue 15644 - Switch object layout ABI to MI style


https://github.com/D-Programming-Language/dmd/pull/5402 - fix 
Issue 15647 - Casting from one C++ interface in a hierarchy to 
another is a noop


https://github.com/D-Programming-Language/dmd/pull/5403 - fix 
Issue 15626 - extern(C++) calling crash


Most of Calypso lives independently from the C++ support in DMD, 
and instead queries Clang whenever possible on C++ matters.


It was actually catching C++ exceptions some time before DMD 
(https://github.com/Syniurge/Calypso/tree/master/tests/calypso/eh), has no C++ multiple inheritance layout issue since that's handled by Clang, and the only way extern(C++) affects Calypso is by not reverting the order of function parameters so these functions can be correctly called by C++ code (function pointers, overridden virtual methods), and if I understand correctly this is only necessary because there's a discrepancy between DMD and what the docs say: http://forum.dlang.org/thread/zogygbvfszssudpae...@forum.dlang.org?page=2


When do you think you'll be ready to start upstreaming some of 
your work to LDC and/or DMD?


My big concern is the switch to DDMD. It seems that the 
transition is going pretty smoothly for LDC, but what about 
Calypso's extensions to DMD? Calypso classes deriving from DMD 
ones will have to be converted to D and those classes happen to 
sollicit Clang's C++ API a lot, so I'm counting on C++ Calypso to 
build D Calypso meaning it has to be pretty solid at that point 
to support both Clang and LLVM.


Anyway as long as both LDC and Calypso haven't both caught up 
with DDMD it's probably too early for upstreaming.


The downside is that Calypso is marginalized, I don't get many 
testers (<- euphemism, only wilsonk helped a lot and right now 
I'm about the only one testing). The neglecting of MSVC, the 
"still experimental" label and the lack of releases probably 
don't help in that regard. It's not a big deal though since I 
have enough on my hands, coming next is the LDC 0.17 merge, and 
rework on the PCH generation that should increase the speed 3x 
according to cachegrind.


Re: unit-threaded v0.5.7 - advanced multi-threaded unit testing library

2016-02-18 Thread Atila Neves via Digitalmars-d-announce
On Wednesday, 17 February 2016 at 09:16:02 UTC, Sebastiaan Koppe 
wrote:
On Wednesday, 17 February 2016 at 09:05:34 UTC, Atila Neves 
wrote:
I'm on a tablet on holiday so sorry in advance for the short 
answer.


You're on a holiday, I appreciate anything you write :)

Your versioned import is the reason why I made it so a plain 
string UDA is just as good as @Name. That way you only need to 
import unit_threaded once in a version block, and only if you 
want to use the shouldXXX assertions.


Nice. What about @ShoudFail though?


Well, then there are no miracles ;) I suggest this:

version(unittest)
import unit_threaded;
else
enum ShouldFail; // or import unit_threaded.attrs



Re: DigitalWhip

2016-02-18 Thread ixid via Digitalmars-d-announce
On Saturday, 13 February 2016 at 21:10:11 UTC, Adam D. Ruppe 
wrote:
We should run benchmarks with bounds checking enabled to better 
reflect real world results. Yes, it might "lose" to C


Like for like comparisons are the best approach, making it clear 
what a given result is for. The most effective story for D is 
that it's fast.