If you try to compile to JS, then you cannot have 'main0' in your code.
For instance, the following code worked when I tried:







*datavtype maybe(a:vt@ype) =| NAH of ()| YAH of (a)fn{a:vt@ype} maybe_nah
() : maybe(a) = NAH()fn{a:vt@ype} maybe_yah ( x: a ) : maybe(a) = YAH(x)*







*val () = let    var m1 = maybe_nah<int>()    var m2 = maybe_yah<int>(6)
val-~NAH() = m1    val-~YAH(int) = m2inend*

On Mon, Nov 29, 2021 at 11:03 AM d4v3y_5c0n3s <tmj9...@gmail.com> wrote:

> You need to select the "Patsopt2js" button when using Try-ATS-on-line to
> get the error I posted.  I'll test using my local ATS installation to
> determine whether this is only on the JS version of ATS or not.
> On Monday, November 29, 2021 at 10:23:56 AM UTC-5 gmhwxi wrote:
>
>> Is there a way for me to generate the error you are referring to?
>> The above code works fine on my end.
>>
>> --Hongwei
>>
>>
>> On Mon, Nov 29, 2021 at 10:16 AM d4v3y_5c0n3s <tmj...@gmail.com> wrote:
>>
>>> I think I've been able to break down a problem I've been having with
>>> ATS' templates into a simple example provided below.  The following code
>>> type-checks, and can easily tested using Try-ATS-on-line.
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> *datavtype maybe(a:vt@ype) =| NAH of ()| YAH of (a)fn{a:vt@ype}
>>> maybe_nah () : maybe(a) = NAH()fn{a:vt@ype} maybe_yah ( x: a ) : maybe(a) =
>>> YAH(x)implement main0 () = let    var m1 = maybe_nah<int>()    var m2 =
>>> maybe_yah<int>(6)    val-~NAH() = m1    val-~YAH(int) = m2inend*
>>>
>>> Running the above sample produces the following error:
>>> ParsingErrors:
>>> /tmp/patsopt_ccats_Ht1nNp: 9732(line=454, offs=1) -- 9735(line=454,
>>> offs=4): error(parsing): the keyword [EOF] is needed.
>>> exit(ATS): uncaught exception at run-time:
>>>
>>> /var/lib/openshift/5419477be0b8cddd09000122/app-root/runtime/repo/ats2-lang/contrib/CATS-parsemit/SATS/catsparse.sats:FatalErrorExn(1024)
>>>
>>> My question is, why is this simple example failing, and how should I fix
>>> it?  I know the problem is related to metaprogramming in some way, but I
>>> don't understand the low-level details enough to get why this isn't
>>> working.  Please let me know if you have any further questions.
>>>
>>> --
>>> 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 ats-lang-user...@googlegroups.com.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/ats-lang-users/4794ec8f-4b17-4d45-9ffe-60d963756e30n%40googlegroups.com
>>> <https://groups.google.com/d/msgid/ats-lang-users/4794ec8f-4b17-4d45-9ffe-60d963756e30n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>> --
> 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 ats-lang-users+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ats-lang-users/d58686a2-e910-4ab4-bfe3-e33fd1bc312dn%40googlegroups.com
> <https://groups.google.com/d/msgid/ats-lang-users/d58686a2-e910-4ab4-bfe3-e33fd1bc312dn%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
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 ats-lang-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ats-lang-users/CAPPSPLpRoz_wLBqkMR0Q9CAuCwk4EPHFbPPxFK4R6uQEBZn8-w%40mail.gmail.com.

Reply via email to