我有2个功能
accelerate :: Float -> [Particle] -> [Particle]
accelerateParticle :: Float -> Particle -> [Particle] -> Particle
我想要实现的是[Particle]
中的每个元素都应用accelerateParticle
函数。我遇到的麻烦是accelerateParticle
函数依赖于使用加速初始给出的原始[particle]
。我在考虑使用像这样的地图
map (\particle -> accelerateParticle Float particle [Particle]) [Particle]
但我不太确定这是否是正确的格式。
答案 0 :(得分:6)
您可能正在寻找:
accelerate :: Float -> [Particle] -> [Particle]
accelerate x ps = map (\p -> accelerateParticle x p ps) ps
请注意,所有粒子ps
的列表都用于map
,而accelerateParticle
的参数。