September 25, 2016
On Sun, Sep 25, 2016 at 4:47 PM, Stefan Koch via Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> wrote:

> On Tuesday, 20 September 2016 at 05:06:57 UTC, Nordlöw wrote:
>
>> On Monday, 19 September 2016 at 10:07:06 UTC, Stefan Koch wrote:
>>
>>> Compiling all of phobos does not crash my engine anymore!
>>>
>>
>> Great work! Keep up still!
>>
>
> I am proud to announce,
> (and slightly embarssed because it took to long)
>
> that the following code can now be executed using the new CTFE engine :
>
> string fn(bool b)
> {
>     return b ? "true" : "false";
> }
> static assert(fn(true) == "true");
> static assert(fn(false) == "false");
>
> although this seems trivial it took me about 3 months to get to this point. I believe from here on the road will be less steep.
>
>

:D congrats!


September 25, 2016
On Sunday, 25 September 2016 at 18:21:27 UTC, Rory McGuire wrote:
>
> :D congrats!

I appreciate it.
If all goes well there will be a separate nightly release build from the newCTFE branch,  sometime in October.

I hope to get alpha bug reports that way.

Also I am now starting experimentation with actual JIT to make sure my API and ABI definitions are not bogus.
(For the record an earlier design made slices impossible) Luckily I spotted this before I went to far with it.

Unfortunately many basic features are still very brittle or completely dysfunctional.
(Such as function calls or structs.)
Again I apologize for the delay.
My adventures in template-land, were quite time consuming.
Although arguably with interesting results.

If you have any questions regarding my work with the DMD, please ask away.

Greetings,
Stefan
October 05, 2016
On Sun, Sep 25, 2016 at 10:47 PM, Stefan Koch via Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> wrote:

> On Sunday, 25 September 2016 at 18:21:27 UTC, Rory McGuire wrote:
>
>>
>> :D congrats!
>>
>
> I appreciate it.
> If all goes well there will be a separate nightly release build from the
> newCTFE branch,  sometime in October.
>
> I hope to get alpha bug reports that way.
>
> Also I am now starting experimentation with actual JIT to make sure my API
> and ABI definitions are not bogus.
> (For the record an earlier design made slices impossible) Luckily I
> spotted this before I went to far with it.
>
> Unfortunately many basic features are still very brittle or completely
> dysfunctional.
> (Such as function calls or structs.)
> Again I apologize for the delay.
> My adventures in template-land, were quite time consuming.
> Although arguably with interesting results.
>
> If you have any questions regarding my work with the DMD, please ask away.
>
> Greetings,
> Stefan
>

No worries, I've been watching this space for over a decade. I really believe you are working on one of the most important parts of IT for the next decade. I am planning/making a library that uses CTFE extensively and feel much more confident about it purely because of your work on getting CTFE performance to be a non-issue.

R


October 16, 2016
On Wednesday, 5 October 2016 at 08:34:06 UTC, Rory McGuire wrote:
>
> No worries, I've been watching this space for over a decade. I really believe you are working on one of the most important parts of IT for the next decade. I am planning/making a library that uses CTFE extensively and feel much more confident about it purely because of your work on getting CTFE performance to be a non-issue.
>
> R

Little update here:
The LLVM backend is almost on feature parity.
Meaning that that soon the new CTFE engine is a real jit.
In the process I discoverd quite a few horrible bugs and inconsistency in the API.
I am quite astonished that it ever ran before :)

October 16, 2016
On 10/16/16 2:27 AM, Uplink_Coder wrote:
> On Wednesday, 5 October 2016 at 08:34:06 UTC, Rory McGuire wrote:
>>
>> No worries, I've been watching this space for over a decade. I really
>> believe you are working on one of the most important parts of IT for
>> the next decade. I am planning/making a library that uses CTFE
>> extensively and feel much more confident about it purely because of
>> your work on getting CTFE performance to be a non-issue.
>>
>> R
>
> Little update here:
> The LLVM backend is almost on feature parity.
> Meaning that that soon the new CTFE engine is a real jit.
> In the process I discoverd quite a few horrible bugs and inconsistency
> in the API.
> I am quite astonished that it ever ran before :)
>

That LLVM thing is surely nice to have but I highly doubt it will be allowed as dependency for DMD.

---
Dmitry Olshansky
October 16, 2016
On Sunday, 16 October 2016 at 10:58:57 UTC, Dmitry Olshansky wrote:
>
> That LLVM thing is surely nice to have but I highly doubt it will be allowed as dependency for DMD.
>
> ---
> Dmitry Olshansky

LLVM is purely optional.
A pure D interpreter exists.

LLVM optimises most ctfe btw and returns constants.
October 17, 2016
On Sunday, 16 October 2016 at 13:51:55 UTC, Uplink_Coder wrote:
> On Sunday, 16 October 2016 at 10:58:57 UTC, Dmitry Olshansky wrote:
>>
>> That LLVM thing is surely nice to have but I highly doubt it will be allowed as dependency for DMD.
>>
>> ---
>> Dmitry Olshansky
>
> LLVM is purely optional.
> A pure D interpreter exists.
>
> LLVM optimises most ctfe btw and returns constants.

If anyone want to take a look the lastest llvm_backend development is happening here :
https://github.com/UplinkCoder/dmd/blob/_ctfe/src/bc_llvm_backend.d
October 17, 2016
On Monday, 17 October 2016 at 00:56:01 UTC, Uplink_Coder wrote:
>
> If anyone want to take a look the lastest llvm_backend development is happening here :
> https://github.com/UplinkCoder/dmd/blob/_ctfe/src/bc_llvm_backend.d

The time llvm takes to build it's IR and execute the JITed code is absolutely too much! multiple milliseconds!

I will write a very simple x86 codegenerator tomorrow.

October 17, 2016
On Monday, 17 October 2016 at 15:50:37 UTC, Uplink_Coder wrote:
> The time llvm takes to build it's IR and execute the JITed code is absolutely too much! multiple milliseconds!
>
> I will write a very simple x86 codegenerator tomorrow.

Great work.
October 19, 2016
On Sunday, 25 September 2016 at 20:47:41 UTC, Stefan Koch wrote:
> If all goes well there will be a separate nightly release build from the newCTFE branch,  sometime in October.
>
> I hope to get alpha bug reports that way.

Have you benchmarked CTFE-heavy projects like Pegged?