Thread overview | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
July 04, 2018 LDC 1.11.0 beta | ||||
---|---|---|---|---|
| ||||
Glad to announce the first beta for LDC 1.11. * Based on D 2.081.0. * Prebuilt packages now using LLVM 6.0.1 and including additional cross-compilation targets (MIPS, MSP430, RISC-V and WebAssembly). Full release log and downloads: https://github.com/ldc-developers/ldc/releases/tag/v1.11.0-beta1 Thanks to all contributors! |
July 05, 2018 Re: LDC 1.11.0 beta | ||||
---|---|---|---|---|
| ||||
Posted in reply to kinke | On Wednesday, 4 July 2018 at 20:38:54 UTC, kinke wrote: > Glad to announce the first beta for LDC 1.11. Thanks for all the work on this. I notice the minimal2.d test from the DMD test suite is disabled: https://github.com/ldc-developers/dmd-testsuite/blob/977ef0696f7941357385925c07617544c3527f4c/runnable/minimal2.d#L5 How permanent/temporary is that? Is there something blocking the implementation? Mike |
July 05, 2018 Re: LDC 1.11.0 beta | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mike Franklin | On Thursday, 5 July 2018 at 08:55:00 UTC, Mike Franklin wrote:
> I notice the minimal2.d test from the DMD test suite is disabled:
> https://github.com/ldc-developers/dmd-testsuite/blob/977ef0696f7941357385925c07617544c3527f4c/runnable/minimal2.d#L5
>
> How permanent/temporary is that? Is there something blocking the implementation?
I failed to see a benefit from being able to use classes with static members only (abuse as namespace?) with a minimal druntime, hence no interest from my side to implement it for now.
|
July 05, 2018 Re: LDC 1.11.0 beta | ||||
---|---|---|---|---|
| ||||
Posted in reply to kinke | On Thursday, 5 July 2018 at 09:40:46 UTC, kinke wrote: > I failed to see a benefit from being able to use classes with static members only (abuse as namespace?) Yeah, pretty much, but also static inheritance. You can see the pattern where I use it at https://github.com/JinShil/stm32f42_discovery_demo/blob/c324bbf861cf258a819478481521528fca88dcb3/source/stm32f42/pwr.d#L24 It's for an ARM Cortex-M microcontroller. The structure, layout, and memory locations of all memory-mapped IO registers (there are 100s of them) are all known at compile-time, so there's no need for instances of anything. The static inheritance allows me to reuse implementation code and also model the hierarchy according to my mental model. After all that's one of the pillars of D, modeling power. Also, modeling them as static classes allows me to avoid the memory layout mess in the linker script (Yuck!), as all the memory addresses accompany the code itself. This also makes it much, much easier to cross-reference the code to the microcontroller's datasheet. D's the only language I know of that can do this; it's not a strength, not a weakness. Mike |
July 05, 2018 Re: LDC 1.11.0 beta | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mike Franklin | On Thursday, 5 July 2018 at 10:57:17 UTC, Mike Franklin wrote: >> I failed to see a benefit from being able to use classes with static members only (abuse as namespace?) > > Yeah, pretty much, but also static inheritance. You can see the pattern where I use it at https://github.com/JinShil/stm32f42_discovery_demo/blob/c324bbf861cf258a819478481521528fca88dcb3/source/stm32f42/pwr.d#L24 Also, it allows me to dot-walk the hierarchy in my editor with code-completion and documentation comments. I describe this and illustrate with images in the readme. https://github.com/JinShil/stm32f42_discovery_demo Mike |
July 05, 2018 Re: LDC 1.11.0 beta | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mike Franklin | Thx for the rationale; I may have a look at it over the weekend. |
July 07, 2018 Re: LDC 1.11.0 beta | ||||
---|---|---|---|---|
| ||||
Posted in reply to kinke | On Wednesday, 4 July 2018 at 20:38:54 UTC, kinke wrote: > Glad to announce the first beta for LDC 1.11. > > * Based on D 2.081.0. > * Prebuilt packages now using LLVM 6.0.1 and including additional cross-compilation targets (MIPS, MSP430, RISC-V and WebAssembly). > > Full release log and downloads: https://github.com/ldc-developers/ldc/releases/tag/v1.11.0-beta1 > > Thanks to all contributors! Would be great to include https://github.com/dlang/dmd/pull/8456 as it's a serious regression and the reason for the early 2.081.1 release. |
July 07, 2018 Re: LDC 1.11.0 beta | ||||
---|---|---|---|---|
| ||||
Posted in reply to Seb | On Saturday, 7 July 2018 at 18:17:49 UTC, Seb wrote:
>
> Would be great to include https://github.com/dlang/dmd/pull/8456 as it's a serious regression and the reason for the early 2.081.1 release.
Because the quality of new DMD releases is often subpar, the LDC release plan is to only release after a good point release of DMD (usually *.*.1, but if this is a hasty .1 release, we probably better wait until 2.081.2)
-Johan
|
July 07, 2018 Re: LDC 1.11.0 beta | ||||
---|---|---|---|---|
| ||||
Posted in reply to Johan Engelen | On Saturday, 7 July 2018 at 18:26:45 UTC, Johan Engelen wrote:
> On Saturday, 7 July 2018 at 18:17:49 UTC, Seb wrote:
>>
>> Would be great to include https://github.com/dlang/dmd/pull/8456 as it's a serious regression and the reason for the early 2.081.1 release.
>
> Because the quality of new DMD releases is often subpar, the LDC release plan is to only release after a good point release of DMD (usually *.*.1, but if this is a hasty .1 release, we probably better wait until 2.081.2)
>
> -Johan
In other words, this is only a beta: the final 1.11 release will be done next month, only with the final release of the DMD 2.081 frontend, likely 2.081.2.
|
Copyright © 1999-2021 by the D Language Foundation