Ori*_*gal 3 dictionary haskell function list
我有2个功能
accelerate :: Float -> [Particle] -> [Particle]
accelerateParticle :: Float -> Particle -> [Particle] -> Particle
Run Code Online (Sandbox Code Playgroud)
而我想要实现的是[Particle]应用accelerateParticle函数中的每个元素.我遇到的麻烦是该accelerateParticle函数依赖于使用[particle]加速初始给出的原始函数.我在考虑使用这样的地图
map (\particle -> accelerateParticle Float particle [Particle]) [Particle]
但我不太确定这是否是正确的格式.
你可能正在寻找这个:
accelerate :: Float -> [Particle] -> [Particle]
accelerate x ps = map (\p -> accelerateParticle x p ps) ps
Run Code Online (Sandbox Code Playgroud)
请注意,所有粒子的列表都ps用于map它上面,并作为参数使用accelerateParticle.