I agree with you , but I need to practice using such tool and I plan to do so for most part of this year for small set of code only.
Also I don't start code with dependent types but later after I get a working code do I try convert to dependent types.
I just wanted to convert some contracts into ATS for quick sort algorithm , it was just a mechanical process(not a pragmatic one). So I eventually managed to get some of it converted , the code is given here :
qs.dats I'll try to convert other contracts/invariants for this code to ATS as I get more familiar/practice with ATS .
I did *not* struggle with ATS , but with my stupidity and silly mistakes (for example change in order of args . incorrect spec , etc).
I must say that I now starting to like ATS , most of the stuff is intuitive I believe :)
Thanks