February 27, 2016
On 26.02.2016 23:41, Walter Bright wrote:
> On 2/26/2016 1:10 PM, Timon Gehr wrote:
>> Different passes are not really required once semantic analysis becomes
>> asynchronous. Just keep track of semantic analysis dependencies, with
>> strong and
>> weak dependencies and different means to resolve cycles of weak
>> dependencies.
>> Then write the semantic analysis of each component in a linear fashion
>> and pause
>> it whenever it depends on information that has not yet been obtained,
>> until that
>> information is computed.
>
> I'll put you in charge of debugging that :-)

I am/was (I have not worked on it a lot lately). I haven't found it to be particularly hard to debug.
It is likely the best way to fix the "forward reference error" situation.
My code which does this does not compile on DMD versions after 2.060 due to forward reference issues. I have just reduced one of them: https://issues.dlang.org/show_bug.cgi?id=15733
February 27, 2016
On 2/27/2016 12:05 PM, Timon Gehr wrote:
> On 26.02.2016 23:41, Walter Bright wrote:
>> On 2/26/2016 1:10 PM, Timon Gehr wrote:
>>> Different passes are not really required once semantic analysis becomes
>>> asynchronous. Just keep track of semantic analysis dependencies, with
>>> strong and
>>> weak dependencies and different means to resolve cycles of weak
>>> dependencies.
>>> Then write the semantic analysis of each component in a linear fashion
>>> and pause
>>> it whenever it depends on information that has not yet been obtained,
>>> until that
>>> information is computed.
>>
>> I'll put you in charge of debugging that :-)
>
> I am/was (I have not worked on it a lot lately). I haven't found it to be
> particularly hard to debug.

It'll get 100 times harder if it's a heisenbug due to synchronization issues.


> It is likely the best way to fix the "forward reference error" situation.
> My code which does this does not compile on DMD versions after 2.060 due to
> forward reference issues. I have just reduced one of them:
> https://issues.dlang.org/show_bug.cgi?id=15733

Thanks for preparing a bug report.

February 28, 2016
On 27 February 2016 at 23:30, Walter Bright via Digitalmars-d < digitalmars-d@puremagic.com> wrote:

On 2/27/2016 12:05 PM, Timon Gehr wrote:
>
>> On 26.02.2016 23:41, Walter Bright wrote:
>>
>>> On 2/26/2016 1:10 PM, Timon Gehr wrote:
>>>
>>>> Different passes are not really required once semantic analysis becomes
>>>> asynchronous. Just keep track of semantic analysis dependencies, with
>>>> strong and
>>>> weak dependencies and different means to resolve cycles of weak
>>>> dependencies.
>>>> Then write the semantic analysis of each component in a linear fashion
>>>> and pause
>>>> it whenever it depends on information that has not yet been obtained,
>>>> until that
>>>> information is computed.
>>>>
>>>
>>> I'll put you in charge of debugging that :-)
>>>
>>
>> I am/was (I have not worked on it a lot lately). I haven't found it to be
>> particularly hard to debug.
>>
>
> It'll get 100 times harder if it's a heisenbug due to synchronization issues.
>
>
Surely with Fibers everything would be deterministic though?


February 28, 2016
On Friday, 26 February 2016 at 22:20:09 UTC, Walter Bright wrote:
>> I am referring to this thread:
>>
>> http://lists.llvm.org/pipermail/llvm-dev/2015-October/091536.html
>
> Thanks for the pointer. If anyone wants to chip in on that thread, feel free!

Hi Walter,

Should LLVM move to an Apache License would that help in migrating to an LLVM backend as the standard backend?

Regards
Dibyendu

February 28, 2016
On Thursday, 25 February 2016 at 01:53:51 UTC, Walter Bright wrote:
> On 2/17/2016 4:35 PM, Chris Wright wrote:
>> And since DMD is
>> something like twice as fast as LDC, there's at least some argument in
>> favor of keeping it around.
>
> When I meet someone new who says they settled on D in their company for development, I casually ask why they selected D?
>
>   "Because it compiles so fast."
>
> It's not a minor issue.

Could we maybe create a quick informative survey, (surveymonkey?), so we can get a glimpse of why people like D and what they believe would improve their experience with the language? Perhaps also why they have chosen to or not to adopt D more seriously or professionally?

Given that there is such a wide diversity of people currently using it, I think it would be nice for the project leadership and all of us in the community to get a more realistic view on this matter, to better understand what's important, chose the future direction and what are the real selling points. Right now it seems like there are a lot of mixed signals even among long-time users and contributors.
February 28, 2016
On Sunday, 28 February 2016 at 13:31:17 UTC, Márcio Martins wrote:

> Could we maybe create a quick informative survey, (surveymonkey?), so we can get a glimpse of why people like D and what they believe would improve their experience with the language? Perhaps also why they have chosen to or not to adopt D more seriously or professionally?
>
> Given that there is such a wide diversity of people currently using it, I think it would be nice for the project leadership and all of us in the community to get a more realistic view on this matter, to better understand what's important, chose the future direction and what are the real selling points. Right now it seems like there are a lot of mixed signals even among long-time users and contributors.

Such a survey wouldn't be anywhere near "realistic." The number and types of users who regularly keep up with the forums are highly unlikely to be a representative sample of D users.
February 28, 2016
On Sunday, 28 February 2016 at 15:02:24 UTC, Mike Parker wrote:

>
> Such a survey wouldn't be anywhere near "realistic." The number and types of users who regularly keep up with the forums are highly unlikely to be a representative sample of D users.

Not to mention that only a fraction of people who view the forums would actually take the survey.
February 28, 2016
On Sunday, 28 February 2016 at 12:59:01 UTC, Dibyendu Majumdar wrote:
> Should LLVM move to an Apache License would that help in migrating to an LLVM backend as the standard backend?
>
> Regards
> Dibyendu

LLVM is great but you wouldn't want to be locked down to only one backend, probably. LLVM does have good support for a variety of architectures though... A bytecode code generator might be good for bootstrapping (after the nuclear apocalypse) but everyone just cross-compiles.
February 28, 2016
On Sunday, 28 February 2016 at 15:02:24 UTC, Mike Parker wrote:
> On Sunday, 28 February 2016 at 13:31:17 UTC, Márcio Martins wrote:
>
>> Could we maybe create a quick informative survey, (surveymonkey?), so we can get a glimpse of why people like D and what they believe would improve their experience with the language? Perhaps also why they have chosen to or not to adopt D more seriously or professionally?
>>
>> Given that there is such a wide diversity of people currently using it, I think it would be nice for the project leadership and all of us in the community to get a more realistic view on this matter, to better understand what's important, chose the future direction and what are the real selling points. Right now it seems like there are a lot of mixed signals even among long-time users and contributors.
>
> Such a survey wouldn't be anywhere near "realistic." The number and types of users who regularly keep up with the forums are highly unlikely to be a representative sample of D users.

There is no reason why it should be limited to these forums, is there?
Such a survey should be fairly more "realistic" and "representative" than feelings, emotions and anecdotal evidence.

I think it would be interesting and useful to know what is important for:
-users just starting to use D
-users already heavily invested in the language
-users in each distinct usage (gamedev, web, scripts, real-time, ...)
-users proficient in alternative languages
-companies of different sizes
-size of D codebase
February 28, 2016
On 02/28/2016 11:15 AM, Márcio Martins wrote:
> There is no reason why it should be limited to these forums, is there?
> Such a survey should be fairly more "realistic" and "representative"
> than feelings, emotions and anecdotal evidence.
>
> I think it would be interesting and useful to know what is important for:
> -users just starting to use D
> -users already heavily invested in the language
> -users in each distinct usage (gamedev, web, scripts, real-time, ...)
> -users proficient in alternative languages
> -companies of different sizes
> -size of D codebase

Putting the horses on the proper end of the cart is to first make sure we make it easy to align the three compiler versions together. Only then, choosing which compiler is more promoted, default etc. becomes a simple matter of branding.

Márcio, we are a small enough community that we can't enact things by fiat. We've tried before, invariably with bad results. Of course you are free to speculate that this time may be different, but it's just that - speculation.


Andrei