@右席
我覺得文中的方式拐了一個彎,用unsafeCoerce更直白一點(diǎn),直接就能看出代碼的目的
@右席 各人理解不同,但這是個很優(yōu)雅的解決方案,與Y組合子定義一致
我反而覺得這種不需要類型檢查時顯式地自行保證類型的準(zhǔn)確的做法是優(yōu)點(diǎn),這和繞過類型檢查在概念上是不同的。就如同隱含轉(zhuǎn)換和強(qiáng)制轉(zhuǎn)換的區(qū)別,現(xiàn)在都認(rèn)為隱含轉(zhuǎn)換是邪惡的,強(qiáng)制轉(zhuǎn)換才是正確的方式。
另外請你解釋一下你的高大上的標(biāo)準(zhǔn)-。-
import Unsafe.Coerce
y :: (a -> a) -> a
y = \f -> (\x -> f (unsafeCoerce x x)) (\x -> f (unsafeCoerce x x))
想改變現(xiàn)狀的人做了個新的語言出來,于是想出名的人有了可以噴的東西,評論家靠發(fā)明家吃飯.
這個問題的原因是DirectX修改了系統(tǒng)行為強(qiáng)制把浮點(diǎn)數(shù)定為單精度,造成lua整型的范圍變小了
開源軟件在事實(shí)上使得共享軟件的質(zhì)量變得更高,這對整個市場和用戶都是良性的
Textmate人家照樣賣的很火爆,共享軟件如果連開源軟件都不如,又如何開口向用戶要錢呢