I have to say that compiling ATS3 to LLVM is just a preliminary plan. The primary plan as of now is still to target C. I hope that there will be a community effort at some point. The implementation of ATS3 is already structured in a way to facilitate such a effort (on building an ecosystem).
Cheers! On Monday, February 3, 2020 at 3:26:24 PM UTC-5, Andreas ZUERCHER wrote: > > The answer(s) to this question will be fascinating & instructive to those > of us studying the internals of ATS. There will likely be 2 different > avenues of answers: the ATS2/Postiats (transliteration to C) answer and > the ATS3 (interpreter for now, then compilation to LLVM IR forthcoming) > answer, because the internals might differ due to the intended destination > of C versus LLVM IR. Everything about ATS2 and ATS3 is intriguing. What a > time to be alive! > > On Sunday, February 2, 2020 at 7:04:32 PM UTC-6, rodol wrote: >> >> I am trying to understand exactly how ATS internals work. >> >> I don't understand how the datatypes work. Are they like named unboxed >> tuples, >> essentially? Or are they boxed? I assume they are unboxed, but then I >> have trouble >> understanding how lists work, since they would be like a bunch of nested >> unboxed >> tuples. Which would be problematic since they'd be passed by value, and >> large lists >> would have bad performance. On the other hand, if datatypes are boxed, >> then lists >> would be like linked lists, and wouldn't be linear in memory so... >> >> Are arrays the preferred way to get performance? >> >> Is there something I can read that explain this part of ATS? >> > -- You received this message because you are subscribed to the Google Groups "ats-lang-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/ats-lang-users/b3e01acc-4bf8-4842-b95c-e9cf119b4b08%40googlegroups.com.
