ARM first & default LDC

Max Haughton maxhaton at gmail.com
Wed Dec 16 05:20:21 UTC 2020


On Wednesday, 16 December 2020 at 01:37:50 UTC, Petar Kirov 
[ZombineDev] wrote:
> On Tuesday, 15 December 2020 at 23:11:32 UTC, twk wrote:
>> I would like to point out that ARM also has other competition:
>>
>> https://riscv.org/
>>
>> So we do not want to base all of our decisions on ARM.
>
> My point was to sidestep the whole argument about what 
> ISA/platform is going to be the most popular one and also which 
> backend should be the default among dmc/gcc/llvm by choosing 
> neither and building a new one from scratch.
> Perhaps it wasn't apparent from my post, but I was joking :)
>
> Okay, perhaps only half joking, as choosing a virtual ISA that 
> is already this widespread, stable enough, with adoption 
> rapidly growing (just look at all the excitement arond WASI, 
> wasm for blockchain, the bytcode alliance, wasm for backend 
> apps (even as a sandbox, instead of containers) (see also the 
> precursor to that - CloudABI) etc.), cross-platform (supported 
> on way more platforms than what dmd can target) and with more 
> backends than D's big 3, actually has some nice befits, like 
> making it easier to build a REPL, safer dynamic code 
> generation, faster edit-debug cycle, etc. Ability to build and 
> run D on any platform for which the there is a wasm AoT 
> compiler, JIT or at least an interpreter. Also a good 
> opportunity to retractor druntime and phobos to be less libc, 
> or even Posix dependent, less GC-reliant and generally more 
> modular and pay-as-you go.
>
> P.S. I know about RISC-V as I'm waiting SiFive to release their 
> 16GB RAM boards as I don't like being forced to use separate 
> compilation to build D code especially when playing with CTFE 
> and TMP monsters :P
>
> P.S.S. Perhaps the future neither x86_64, nor IBM POWER, nor 
> MIPS, nor ARM, etc., but FPGAs :P

I assume compiling dmd on an FPGA would take a mere day or two to 
actually finish. FPGA's are not good at general purpose 
computing, although I believe dcompute can use them.

Ultimately in this discussion of arm and RISC-V making the 
frontend asm {} blocks understand them would probably do more 
than changing compilers. It's a relatively simple thing to have 
but I don't think any other language can do it.




More information about the Digitalmars-d mailing list