Is Sage a better alternative to C++(with NTL), for programming that involves math objects like polynomial rings in cryptosystems? I hear that Sage is an open source alternative to Magma. I have used Magma before for such programming and it was easier than using C++ because it had built in keywords for defining such structures and to work with them.
I also found that I can make use of the NTL lib in Sage. Is there any advantage to using C++ in terms of efficiency?