src/Pure/PIDE/execution.ML
10 months ago ago clarified bracketing of messages: [forked [running finished] joined];
13 months ago ago tuned;
13 months ago ago record active execution task and depend on it -- avoid new executions bumping into old ones;
13 months ago ago tuned -- more explicit types;
14 months ago ago clarified future scheduling parameters, with support for parallel_limit;
17 months ago ago clarified signature;
23 months ago ago clarified signature;
23 months ago ago more thorough Execution.join, under the assumption that nested Execution.fork only happens from given exed_ids;
23 months ago ago more synchronized Execution.snapshot;
2017-05-27 ago clarified build errors;
2016-12-28 ago more uniform treatment of "bad" like other messages (with serial number);
2016-04-09 ago clarified bootstrap;
2016-04-06 ago tuned signature;
2015-09-01 ago thread context for exceptions from forks, e.g. relevant when printing errors;
2015-01-29 ago unused;
2015-01-11 ago do not crash into already running exec, instead join its lazy result in the subsequent step (amending 59f1591a11cb);
2014-03-31 ago support bulk messages consisting of small string segments, which are more healthy to the Poly/ML RTS and might prevent spurious GC crashes such as MTGCProcessMarkPointers::ScanAddressesInObject;
2014-03-27 ago tuned;
2014-03-27 ago redirect ML_Compiler reports more directly: only the (big) parse tree report is deferred via Execution.print (NB: this does not work for asynchronous "diag" commands);
2014-03-27 ago clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
2014-03-26 ago support to redirect report on asynchronous / non-strict print function (NB: not scalable due to bulky merge of markup trees);
2014-03-26 ago less markup by default -- this is stored persistently in Isabelle/Scala;
2014-03-26 ago more uniform Execution.fork vs. Execution.print;
2014-03-26 ago added Execution.print: accumulate print operations for some command execution, which are applied later and print time;
2013-12-05 ago more uniform status -- accommodate spurious Exn.Interrupt from user code, allow ML_Compiler.exn_messages_id to crash;
2013-11-25 ago more robust status reports: avoid loosing information about physical events (see also 28d207ba9340, 2bc5924b117f, 9edfd36a0355) -- NB: TTY and Proof General ignore Output.status and Output.report;
2013-09-03 ago Execution.fork formally requires registered Execution.running;
2013-08-25 ago tuned;
2013-08-25 ago maintain goal forks as part of global execution;
2013-07-30 ago pro-forma Execution.reset, despite lack of final join/commit;
2013-07-30 ago de-assign execs that were not registered as running yet -- observe change of perspective more thoroughly;
2013-07-29 ago keep memo_exec execution running, which is important to cancel goal forks eventually;
2013-07-29 ago obsolete;
2013-07-15 ago more careful termination of removed execs, leaving running execs undisturbed;
2013-07-12 ago tuned;
2013-07-12 ago clarified execution: maintain running execs only, check "stable" separately via memo (again);
2013-07-12 ago tuned signature;
2013-07-12 ago clarified module name;