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.

Reply via email to