From: antispam@fricas.org
Chris Townley wrote:
> On 29/03/2025 18:19, Waldek Hebisch wrote:
>> Simon Clubley wrote:
>>> On 2025-03-27, Arne Vajhøj wrote:
>>>>
>>>> or:
>>>> - people use a different backend than LLVM (GCC, custom, whatever)
>>>>
>>>
>>> If anyone knows of a serious backend code generator other than LLVM
>>> or GCC, please feel free to point me at it. :-)
>>>
>>> Simon.
>>>
>>> PS: And no Bill, the Amsterdam Compiler Kit does not apply. :-)
>>
>> Depends what you consider serious (and what "backend" means).
>> There is bunch of compilers that use their own backend,
>> for example optimized Ocaml or SBCL Lisp. If you aim at
>> highest possible speed, regardless of language, then they
>> can not compete. If you look at native performance for
>> relevant languages, then they are top performers (there are
>> Lisp compilers which generate code via translation to C,
>> resulting speed is lower than obtained using SBCL).
>>
>> Note that context was porting languages, "classic"
>> languages are covered by VSI, so relevant things are
>> backends for more exotic languages. There was recent
>> trend to adopt LLVM in such cases, and Julia seem to
>> be prominent example of language dependent on LLVM.
>> But more popular approach seem to be via custom
>> backend or via C. For example Haskell folks some time
>> ago said that LLVM does not really give them advantages
>> compared to going via C, and C way is easier.
>>
>
> Isn't that what GNAT does for Ada?
I am not sure what you wanted to say. GNAT is a native
compiler using GCC backend. There were some talk about
interfacing it to LLVM, but I am not aware of anything
working in this direction. GNAT does _not_ generate
C, it interfaces with the backend using constructs not
available in C.
--
Waldek Hebisch
--- SoupGate-DOS v1.05
* Origin: you cannot sedate... all the things you hate (1:229/2)
|