Exception can be seen as an extensible datatype. The tag attached to each exception constructor is chosen at run-time (during initialization phase). When you compile exn.sats, some sort of initialization function is generated.
The tag attached to each constructor associated with a datatype is chosen at compile-time. So there is no need for the aforementioned initialization. On Wednesday, August 10, 2016 at 10:09:05 AM UTC-4, Steinway Wu wrote: > > Hi, > > When I define an exception in SATS file `exn.sats`, I need to compile it > like `patscc *.dats *exn.sats*` to have the symbol defined. However, when > I define a normal datatype in some sats file, I usually can compile it by > indicating only those DATS files, like `patscc *.dats`. Why are they > different? > > Thanks, > -- 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 post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/ats-lang-users. To view this discussion on the web visit https://groups.google.com/d/msgid/ats-lang-users/a13702b1-fdd4-4a65-b9e0-3413c17334c2%40googlegroups.com.
