Skip to content

Comment on Gnat 2021 GPL Community Edition Ada 202x compiler releasedparent

Comments

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.

> 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.htm...), it is Ada, regardless of how the particular implementation is licensed.

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...), it is Ada, regardless of how the particular implementation is licensed.

I wasn't arguing against that, but, yes I agree.

I understand now.

It would be the alang Ada compiler similar to the clang C compiler.

Thank you for clarifying.

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.

Interestingly 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.

Well... 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 [1] https://blog.adacore.com/use-of-gnat-llvm-to-translate-ada-a... [2] https://blog.adacore.com/android-application-with-ada-and-we...

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.