Какая связь между этими классами Future и трейтами в Scala, и почему они разбросаны по разным пакетам?
Я обнаружил их:
abstract class scala.actors.Future
object scala.actors.Futures
trait/object scala.collection.parallel.FutureThreadPoolTasks
trait scala.concurrent.FutureTaskRunner
trait scala.parallel.Future (the package consists of only this file...)
Они существенно отличаются друг от друга или есть еще одна причина, по которой они не могут быть объединены?
Есть ли хороший пример, показывающий, когда можно использовать то или другое?
Редактировать: Награда за объяснение того, что каждый из классов / черт / объектов делает и как они оправдывают свое существование / чем они полезны.