3 ms·
Perhaps companies and individual with an interest in a permissively licensed Ada ecosystem should step up and create it? Build it on top of LLVM and call it, sa
by jabl 5y ago
Perhaps companies and individual with an interest in a permissively licensed Ada ecosystem should step up and create it? Build it on top of LLVM and call it, say, alang.
- thesuperbigfrog 5y ago>> Perhaps companies and individual with an interest in a permissively licensed Ada ecosystem should step up and create it? Build it on top of LLVM and call it, say, alang. If it is an Ada implementation, why wouldn't they call it Ada rather than alang? If the language implements the Ada standard (http://www.ada-auth.org/standards/rm12_w_tc1/html/RM-TOC.html http://www.ada-auth.org/standards/rm12_w_tc1/html/RM-TOC.htm...), it is Ada, regardless of how the particular implementation is licensed.
- jabl 5y ago> If it is an Ada implementation, why wouldn't they call it Ada rather than alang? In the same way that "the" C/C++ LLVM frontend is called clang and the Fortran frontend is called flang. So a hypothetical Ada frontend could be called alang. > If the language implements the Ada standard (http://www.ada-auth.org/standards/rm12_w_tc1/html/RM-TOC.htm http://www.ada-auth.org/standards/rm12_w_tc1/html/RM-TOC.htm...), it is Ada, regardless of how the particular implementation is licensed. I wasn't arguing against that, but, yes I agree.
- thesuperbigfrog 5y agoI understand now. It would be the alang Ada compiler similar to the clang C compiler. Thank you for clarifying.
- Lucretia9 5y ago> If it is an Ada implementation, why wouldn't they call it Ada rather than alang? A serious lack of imagination, re clang, flang, etc.
- touisteur 5y agoWell... There's GNATLLVM [0] a project to have the GNAT frontend output LLVM. From... AdaCore. Someone has already beat me to a first wasm example [1] and there's also a first wasm-based Android one [2]... [0] https://blog.adacore.com/combining-gnat-with-llvm https://blog.adacore.com/combining-gnat-with-llvm [1] https://blog.adacore.com/use-of-gnat-llvm-to-translate-ada-applications-to-webassembly https://blog.adacore.com/use-of-gnat-llvm-to-translate-ada-a... [2] https://blog.adacore.com/android-application-with-ada-and-webassembly https://blog.adacore.com/android-application-with-ada-and-we...
- touisteur 5y agoInterestingly there was, in the first days of clang, an Ada 'compiler', through dragonegg. The original author meant to write an Ada compiler on top of llvm and translated (iirc) gcc's gimple to llvm, with some success. The fun part is that dragonegg became an important part of clang/llvm for years (before it was phased out) to compile fortran (before flang) and to compare clang results and gcc's. I seem to remember other interesting uses but my memory is failing me. Duncan Sands (the original author I think?) is an outstanding engineer and very fun person to talk to.