# HG changeset patch # User wenzelm # Date 1362499656 -3600 # Node ID ef494f2288cf780327b7319fcefb1e0e9e4af4e2 # Parent dd1dd470690b683acb058d3c45b350666979bd5a# Parent 45579fbe5a242400fb880ce7da4d0fb21c111f64 merged diff -r dd1dd470690b -r ef494f2288cf src/Pure/Concurrent/future.ML --- a/src/Pure/Concurrent/future.ML Tue Mar 05 15:43:22 2013 +0100 +++ b/src/Pure/Concurrent/future.ML Tue Mar 05 17:07:36 2013 +0100 @@ -70,7 +70,6 @@ val value: 'a -> 'a future val cond_forks: params -> (unit -> 'a) list -> 'a future list val map: ('a -> 'b) -> 'a future -> 'b future - val flat: 'a list future list -> 'a list future val promise_group: group -> (unit -> unit) -> 'a future val promise: (unit -> unit) -> 'a future val fulfill_result: 'a future -> 'a Exn.result -> unit @@ -608,20 +607,6 @@ (fn () => f (join x)) end; -fun flat_future futures = - (case filter_out is_finished futures of - [] => value_result (Exn.interruptible_capture (flat o joins) futures) - | [x] => map_future (fn _ => flat (joins (futures))) x - | xs => - let - val tasks = map task_of xs; - val pri = foldl1 Int.min (map Task_Queue.pri_of_task tasks); - in - (singleton o cond_forks) - {name = "flat_future", group = NONE, deps = tasks, pri = pri, interrupts = true} - (fn () => flat (joins (futures))) - end); - (* promised futures -- fulfilled by external means *) @@ -705,7 +690,6 @@ (*final declarations of this structure!*) val map = map_future; -val flat = flat_future; end;