LADSoft / OrangeC

OrangeC Compiler And Tool Chain
http://ladsoft.tripod.com/orange_c_compiler.html
Other
290 stars 39 forks source link

[Feature request] Dlang frontend support #1052

Open fithisux opened 2 days ago

fithisux commented 2 days ago

Wishful thinking for an OrangeD compiler.

chuggafan commented 2 days ago

If someone wants to contribute one (and maintain it), I don't think I would personally say no, but me and @LADSoft adding one? A definitive no. I'd be more than happy to help with someone who wants to contribute/maintain for sure however, esp. since I'm taking less work on this project than I should be right now and I need to bring myself back into the working on the compiler mindset.

On Thu, Sep 19, 2024 at 4:23 PM Vasileios Anagnostopoulos < @.***> wrote:

Wishful thinking for an OrangeD compiler.

— Reply to this email directly, view it on GitHub https://github.com/LADSoft/OrangeC/issues/1052, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADSPBTRWQIIH6UXVDJBCNG3ZXMXETAVCNFSM6AAAAABOQVVX5SVHI2DSMVQWIX3LMV43ASLTON2WKOZSGUZTOMRZHE4DEMA . You are receiving this because you are subscribed to this thread.Message ID: @.***>

LADSoft commented 1 day ago

@fithisux -

i'm guessing a D frontend might not be much of a problem given we already have full C/C++ support, but, based on basically no knowledge I'm guessing that D has a large amount of runtime support. It was kinda difficult getting a C runtime up and running, and I didn't even try writing a C++ runtime but rather resorted to using things available on the web. But honestly, given that I don't have experience in D the chances of me writing an adequate runtime are small, even if I had time to do it...

I need to agree with @chuggafan, there is enough work to do on Orange C and it is going very slowly as is. It has taken us a year to work out the support for the C++17 release and we still aren't quite there yet. So I don't want to branch off into more frontends at this time.... but if you want to contribute your time we could certainly work with you to figure out the best way to leverage the C/C++ frontend to turn it into a D one....

chuggafan commented 1 day ago

I would assume what is being asked is closer to the way gcc and llvm do it: Ignore us providing custom runtime support or even implementing the frontend, the way all of the major non-DMD D compilers function is basically take the DMD frontend, port it from using the Digital Mars C/C++ compiler backend and target it towards whatever compiler you're gluing it to. I still think that's a lot of effort when I'm still trying to figure out what in the universe posix_spawn actually is demanding of me to use it.

On Fri, Sep 20, 2024 at 8:12 PM David Lindauer @.***> wrote:

@fithisux https://github.com/fithisux -

i'm guessing a D frontend might not be much of a problem given we already have full C/C++ support, but, based on basically no knowledge I'm guessing that D has a large amount of runtime support. It was kinda difficult getting a C runtime up and running, and I didn't even try writing a C++ runtime but rather resorted to using things available on the web. But honestly, given that I don't have experience in D the chances of me writing an adequate runtime are small, even if I had time to do it...

I need to agree with @chuggafan https://github.com/chuggafan, there is enough work to do on Orange C and it is going very slowly as is. It has taken us a year to work out the support for the C++17 release and we still aren't quite there yet. So I don't want to branch off into more frontends at this time.... but if you want to contribute your time we could certainly work with you to figure out the best way to leverage the C/C++ frontend to turn it into a D one....

— Reply to this email directly, view it on GitHub https://github.com/LADSoft/OrangeC/issues/1052#issuecomment-2364771966, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADSPBTS3T22HTLTYXVZKZ5TZXS2VPAVCNFSM6AAAAABOQVVX5SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNRUG43TCOJWGY . You are receiving this because you were mentioned.Message ID: @.***>