Hello PolyMLers,

Some time ago I proposed PolyML switch to building with the C++11 standard [0]. 
The main blocking issue that surfaced was Isabelle supporting Ubuntu 12.04 
which ships without a C++11-enlightened compiler. In January 2019, Makarius 
bumped the supported Linux release to Ubuntu 14.04 [1] which has a C++11 
compiler. Are there any remaining issues preventing a migration to C++11? Do 
people feel strongly for or against this? The immediate benefits are similar to 
what I listed in my original posting:

 - PLock, PLocker, PCondVar implementations could all be deleted and dropped 
with std::mutex, std::lock_guard, std::condition_variable respectively
 - NORETURNFN could be replaced with [[noreturn]]
 - Bitmap could be dropped and replaced with std::vector<bool>

The general motivation here is reducing the maintenance overhead and allowing 
performance to evolve with libstdc++/libc++. I expect we could get a lot of 
mileage out of code clarity wins too (e.g. range-based for loops).

I haven’t CCed isabelle-dev because I think they would have no opinion on this 
topic, but Makarius if you think it’s relevant please loop them into this 
thread as well.

Thanks,
Matt

  [0]: http://lists.inf.ed.ac.uk/pipermail/polyml/2017-December/002125.html
  [1]: http://isabelle.in.tum.de/repos/isabelle/rev/88b8bc6a6e5f
_______________________________________________
polyml mailing list
[email protected]
http://lists.inf.ed.ac.uk/mailman/listinfo/polyml

Reply via email to