Hi David et al, While experimenting with some of the recent PolyML commits, I realised the build system doesn’t seem to set any particular C++ standard. I guess this results in the compiler default (e.g. GNU++14 in the latest GCC [0]). Is this intentional?
Relatedly, coming up on 2018 it seems like it would be reasonable to require a compiler with C++11 support. I’m not sure how backwards compatible PolyML needs to be these days, but e.g. support for Windows 95/98 has been dropped. I notice some comments in interpreter.cpp that imply whatever is in Debian stable is a lower bound. Moving to C++11 would allow some parts of the code base to be replaced with their C++11 equivalents, reducing the maintenance burden. Some candidates: - Bitmap -> std::vector<bool> - NORETURNFN -> [[noreturn]] - PCondVar -> std::condition_variable - PLock -> std::mutex - PLocker -> std::lock_guard Perhaps this will provide a performance boost as well, but I wouldn’t necessarily count on it. I’d be curious to hear if anyone has strong feelings about this or if any PolyML devs out there are living with a pre-C++11 compiler. Thanks, Matt [0]: https://gcc.gnu.org/onlinedocs/gcc/Standards.html#C_002b_002b-Language _______________________________________________ polyml mailing list polyml@inf.ed.ac.uk http://lists.inf.ed.ac.uk/mailman/listinfo/polyml