After writing several thousand lines of ATS, I'd say there isn't terribly 
much I'd change, honestly. A lot less than when I got started, for sure.

What I would like to see changed:

1. Real module system. MixML might not be a bad source of inspiration, as 
it would essentially be a better version of the ML "modules" you can fake 
with includes, e.g. funmap.hats, and there's an implementation available. 
Doing away with the sigil before module names would be nice.

2. Naming conventions in standard library changed. Less g0ofg1, i2r and so 
on would be nice. I also find the abbreviations you choose to be very 
difficult to read. With a real module system, it would be nice to have 
shorter function names: you could get away with Array.map or A.map instead 
of array_map. This way the user can choose how verbose to be about module 
names.

3. Integrating templates with the module system. BTW embeddable templates 
are my absolute favorite feature of ATS.

4. Accessing flat memory of sum types and some kind of analog of C++ 
placement new. This would make certain things a lot safer and easier.

5. Real macros or very powerful metaprogramming support. I know 
metaprogramming can be abused, but there are many things where I wish I had 
even a customizable version of #codegen2 that I could use. D is probably a 
good source of inspiration for this subject.

6. General cleanup of cruft and making sure features work together.

7. Pretty-printed error messages.

8. REPL, perhaps via atscc2scm and an embedded R7RS-small interpreter?

Anyways, I've found ATS to be a real pleasure to use overall, and I trust 
my code is correct a lot more than in C++.

-- 
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 post to this group, send email to ats-lang-users@googlegroups.com.
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/1b0f9f4f-51c3-46db-94a1-b0c91d1e4f9c%40googlegroups.com.

Reply via email to