Replying to the concise syntax issue in particular: I like concise syntax 
up to a point, but when it comes to types, explicit syntax is sometimes 
nice (though it would be great to allow the user to choose). Both to make 
compilation proceed quicker (possibly), and to make it more obvious what 
code is doing when you read it.

One area where working in ATS  actually seems to prevent this is when 
implementing a function specified elsewhere. Maybe this is just a user 
error from me, but I tried last night to *implement main0(argc, argv): void 
*after looking up the types in the ATS2 sources after grepping for a bit, 
and was able to do it up to a point: I could do something like implement 
int, argv): void*. But then, I wasn't able to figure out how to get it 
further refined and add *argc: int n *in the implementation view. I guess 
this is code duplication to a certain extent, so I don't necessarily think 
it is a great style. On the other hand, it seems a bit inconvenient to have 
to go look in a sats file to see the specification for a function.

On Monday, February 12, 2018 at 1:59:54 PM UTC-5, gmhwxi wrote:
> Thanks.
> Haskell and Idris are definitely on my radar.
> Type inference in ATS is very week (largely due to the support
> for dependent types and linear types). To support concise syntax,
> type inference in ATS needs to greatly strengthened.
> On Sunday, February 11, 2018 at 8:34:48 PM UTC-5, vamchale wrote:
>> I don't have any concrete suggestions, but I would suggest Idris as an 
>> example to follow. Haskell syntax is relatively popular and concise, and 
>> Idris' is even more refined.
>> I will say I'd prefer syntax that eases functional programming, but that 
>> might just be me. And I think that replacing -<lincloptr1> with something 
>> more concise like -o would be a good decision either way.
>> On Friday, February 9, 2018 at 12:15:22 PM UTC-6, gmhwxi wrote:
>>> For the moment, I just want to open a thread for ATS3.
>>> I decided to pick ATS/Xanadu for the full project name. I like the name 
>>> Xanadu
>>> because it is poetic and brings a feel of exoticness.
>>> ATS3 is supposed to be compiled to ATS2. At least at the beginning. I 
>>> will try to
>>> write more about what I have in mind regarding ATS3.
>>> I know that a lot of people have been complaining about the syntax of 
>>> ATS2. So
>>> we can start the effort of designing some "nice" syntax for ATS3. Please 
>>> feel free
>>> to post here if you would like share your opinions and ideas.
>>> I will be happy to take the lead but we definitely need to have some 
>>> form of community
>>> effort on this project given its size and scope.
>>> Cheers!
>>> --Hongwei
>>> PS: I felt rushed every time up to now when implementing ATS. This time 
>>> I am hoping
>>> to have the luxury of thinking about implementation a bit before 
>>> actually doing it :)

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 post to this group, send email to
Visit this group at
To view this discussion on the web visit

Reply via email to