src/Pure/Concurrent/lazy.ML
Thu, 06 Sep 2018 14:08:35 +0200 wenzelm simplified signature (again, see 751bcf0473a7): e.g. relevant for non-Isabelle ML environments;
Sat, 01 Sep 2018 16:08:54 +0200 wenzelm more robust: memoize interrupt (e.g. resource problem) -- avoid multiple attempts;
Sat, 01 Sep 2018 14:25:03 +0200 wenzelm more robust eval_result: enforce finished result stemming from previous run_process, fail if that was interrupted (e.g. due to resource problems);
Sat, 28 Jul 2018 16:08:04 +0200 wenzelm eliminated non-monotomnic Lazy.is_pending: Result may return to Expr due to Interrupt;
Sat, 28 Jul 2018 15:09:37 +0200 wenzelm unused;
Fri, 06 Jul 2018 15:35:48 +0200 wenzelm more frugal assignment of lazy value: fewer mutexes, condvars;
Thu, 05 Jul 2018 23:08:01 +0200 wenzelm store immutable result: fewer refs, mutexes, condvars;
Wed, 09 May 2018 20:45:57 +0200 wenzelm clarified future scheduling parameters, with support for parallel_limit;
Mon, 19 Feb 2018 18:12:28 +0100 wenzelm tuned: more parallel;
Mon, 19 Feb 2018 18:01:36 +0100 wenzelm clarified modules;
Mon, 19 Feb 2018 14:18:29 +0100 wenzelm clarified operations;
Mon, 19 Feb 2018 10:05:37 +0100 wenzelm more operations;
Mon, 23 Oct 2017 14:12:09 +0200 wenzelm minor performance tuning: avoid mutable variable for plain value, e.g. relevant for GC;
Thu, 22 Jun 2017 21:10:13 +0200 wenzelm consolidate proofs more simultaneously;
Thu, 22 Jun 2017 15:20:32 +0200 wenzelm more informative task_statistics;
Thu, 22 Jun 2017 14:27:13 +0200 wenzelm more informative task_statistics;
Sat, 09 Apr 2016 14:00:23 +0200 wenzelm clarified bootstrap;
Wed, 06 Apr 2016 17:16:30 +0200 wenzelm tuned signature;
Sat, 02 Apr 2016 22:38:26 +0200 wenzelm tuned signature;
Sat, 02 Apr 2016 21:10:07 +0200 wenzelm careful export of type-dependent functions, without losing their special status;
Fri, 18 Mar 2016 16:26:35 +0100 wenzelm clarified modules;
Sun, 11 Jan 2015 13:12:47 +0100 wenzelm do not crash into already running exec, instead join its lazy result in the subsequent step (amending 59f1591a11cb);
Sun, 28 Dec 2014 22:10:09 +0100 wenzelm back to full synchronization (cf. eb3e399f5b9f);
Sun, 28 Dec 2014 21:34:45 +0100 wenzelm eliminated Document.execution frontier (again, see 627fb639a2d9): just run into older execution, potentially stalling worker thread, but without global delay due to long-running tasks (notably sledgehammer);
Sun, 28 Dec 2014 12:18:01 +0100 wenzelm more thorough Lazy.is_finished;
Thu, 18 Dec 2014 16:13:54 +0100 wenzelm peek value without synchronization;
Thu, 12 Apr 2012 11:28:36 +0200 wenzelm partial revert of 8a179a0493e3 -- expose failure status of result (potentially via group) instead of isolated interrupt;
Wed, 11 Apr 2012 13:49:09 +0200 wenzelm more robust Future.fulfill wrt. duplicate assignment and interrupt;
Tue, 23 Aug 2011 17:43:06 +0200 wenzelm tuned signature;
Tue, 23 Aug 2011 16:39:21 +0200 wenzelm discontinued slightly odd Future/Lazy.get_finished, which do not really fit into the execution model of Future.cancel/join_tasks (canceled tasks need to be dequeued and terminated explicitly);
Tue, 23 Aug 2011 15:48:41 +0200 wenzelm some support for toplevel printing wrt. editor perspective (still inactive);
Fri, 19 Aug 2011 14:01:20 +0200 wenzelm Future.promise: explicit abort operation (like uninterruptible future job);
Mon, 15 Aug 2011 19:27:55 +0200 wenzelm explicit check of finished evaluation;
Fri, 04 Feb 2011 16:29:47 +0100 wenzelm Lazy.force_result: more standard treatment of interruptibility, potentially addressing races of exceptions vs. interrupts;
Fri, 12 Nov 2010 10:58:09 +0100 wenzelm Laze.force_result: more robust treatment of interrupts stemming from peer group cancellation;
Sat, 06 Nov 2010 15:34:11 +0100 wenzelm tuned comments;
Thu, 09 Sep 2010 17:20:27 +0200 wenzelm more abstract treatment of interrupts in structure Exn -- hardly ever need to mention Interrupt literally;
Sat, 29 May 2010 15:52:47 +0200 wenzelm force_result within the current execution context -- avoids overhead of potential thread context switch and robustifies Interrupt handling;
Wed, 06 Jan 2010 13:14:28 +0100 wenzelm do not memoize interrupts;
Tue, 20 Oct 2009 19:28:01 +0200 wenzelm removed unused map_force;
Thu, 01 Oct 2009 18:10:41 +0200 wenzelm separate concurrent/sequential versions of lazy evaluation;
less more (0) tip