Kendisini birden çok kez çağırması gereken bir işlevi uygularken bazı sorunlar yaşıyorum. Her güncellemesinde değerleri vardır ve doğruluğunu artırır. Bu süreçte diğer fonksiyonları çağırmaktadır, ama budan kadar çalıştığını biliyorum: işlev çağrısıHaskell, özyinelemeli çağrı, birçok argüman
Type = [Double]
*All lists; including type: Same, but not predetermined length.
f0 :: Double -> [[Double]] -> [Double] -> Type -> Type
Tipik örnek: Yapmak istediğim ne
f0 1.0 [[1.0, 0.5, 1.0], [1.0, -1.0, 1.0]] [1.0, 0.0] (initTypeLength 2)
:
f1 :: Int -> Double -> [[Double]] -> [Double] -> Type -> Type
... burada "Int" (i) yineleme sayısını çağırarak, yinelemeli olarak, tüm parametreleri, güncellenen tür dışında aynı tutuyor.
f0 alakalı emin değil isefakat durumda: nerede ve nasıl argümanlar vardır belirtilecektir Ne beni karıştırır
f0 a (x:xs) (y:ys) type = f_other a xs ys
$ f_yet_another a x y type
olduğunu.
Özetle: Buradaki her şey bir liste dışında durağan; Her yinelemede güncellenen "Tür". Bunu nasıl ararım? Açık olduğu hissine kapıldım ama bunu anlayabildiğim bir şekilde anlayamıyorum.