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
Hi Poly/ML members:
I???m porting MLPolyR from SML/NJ to Poly/ML, and after getting
smlnj-lib, ml-yacc and ml-lex loaded with Poly/ML I try to load the
parser but the following error occurs:
```
Exception- Overflow raised
Exception- Overflow raised
```
and `poly` quits.
Here's a minimal setup that can reproduce the issue:
https://github.com/owo-lang/MLPolyR/tree/polyml_debug
Clone the tree and checkout `polyml_debug` branch,
```
poly --use load.sml
```
It already contains smlnj-lib, ml-yacc and ml-lex from MLton 20180207
releases.
My platform is macOS Mojave 10.14.4, Poly/ML version is 5.8 Release.
With the same setup MLton can compile the source without such an
issue. (via `mlton mlpolyr.mlb`)
Hints on what could be the cause?
Thank you for any help you can offer.
LdBeth.