感谢这篇文章,我开始了解依赖方法类型。我有一个类似于以下的结构
trait Environment{
type Population <: PopulationBase
protected trait PopulationBase
def evolveUs(population: Population): Population
}
object FactoredOut{
def evolvePopulation(env: Environment)(prevPopulation: env.Population): env.Population = {
env.evolveUs(prevPopulation)
}
}
我现在想开始使用演员将工作分散到FactoredOut
整个集群中。为此,我需要一种方法来传递携带Environment
.
显然以下不起作用,但演示了我正在尝试做的事情
object Messages{
case class EvolvePopulation(env: Environment)(prevPopulation: env.Population)
}
传递人口及其周围环境的正确方法是什么?
(会添加依赖方法类型标签,但我没有足够的积分来添加“新”标签)