(我是相當新的哈斯克爾,和函數式編程一般這樣可能會做的事情完全錯誤的)如何使用積分/分數的功能與民
我建立在Haskell一個謎,並已告知儘可能少的壓力是最好的(類型)。因此,而不是做一個積分類型,或分數類型的東西,我使用的是參數化類型:
data Orthotope a = Orthotope ...
,並在幾乎所有的功能,我用的是類約束
(Num a)=> ...
(Num a,Ord a)=> ...
然而,在一些特定的功能中,我需要劃分(和一次sqrt)。 我知道我可以使用(/)的分數,並DIV積分,(fromIntegral在需要的地方),甚至,我可以使用Data.Typeable來檢查它是,但都被告知,該幾乎總是完全錯誤的做法。
有沒有更好的方法來劃分和sqrt,對一個不完全知道的類型?或者這是我應該使用類型本身的測試的情況?
(我試圖找到一種方法,可以做一些也分數和積分',如果它適用於更多的類型,甚至更好(而不是使用較不普遍的類型))
謝謝。
一般來說,我完全同意,但在一個小型項目中,這仍然是真的,沒有別的東西會被使用?在這種情況下,通過選擇使用積分類型還是分數類型來完成選擇? (類型在程序中表示的是類型,如果向量空間的值,所以只使用積分數字是有意義的,但最終我可能會添加非近似形狀,然後可能需要Fractional,並且不更改基本代碼)謝謝 – ypw
@ypw我不明白爲什麼我說的任何部分都應該是特定於大型程序的。 –
@ypw每次我想我已經寫了一個足夠小的程序,以確保沒有錯誤,我爲自己的傲慢付出代價。 –