My one example, serialization of nested records from a tlist of 
@(string,t0ype), turned out to not need append. Anyhow, that's blocked for 
now, since I don't think you can reflect a template-argument string literal 
to the value level.

But more generally, a convenient way to write functions between datasorts 
would be a large step towards very powerful metaprogramming in ATS.

With a few more features, ATS could have a very clean and conceptually 
simple metaprogramming approach: templates are interpreters for datasorts. 
Just like a value-level interpreter, it would be nice to separate 
generation and evaluation stages.

People wrote Boost Hana in C++ to do all kinds of computation on type-level 
data structures, despite how painful C++ metaprogramming is.

ATS is not that far from being Boost.Hana on steroids.

The typechecking is already there, and is SO. MUCH. BETTER. than the mess 
you get when trying to write untyped purely functional programs in C++ 

For example, if you pass a bool to a template that expects a tlist, the 
compiler tells you exactly what happened.

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