re: (一)初識(shí)Luajit 右席 2016-01-12 10:27
@可惜了
最近改做hotspot了,工作用不到lua了。。。就沒(méi)繼續(xù)看了。。
@noname
本來(lái)Y組合子就是沒(méi)啥(實(shí)際)意義啊。。
haskell的類(lèi)型系統(tǒng)本來(lái)就是HM+一堆補(bǔ)丁組成的,我沒(méi)明白為啥需要一個(gè) “類(lèi)型系統(tǒng)加一個(gè)Y組合子”,本來(lái)就支持函數(shù)的命名,直接調(diào)不就可以了嘛
@Noname
原來(lái)叫self application , 不過(guò)對(duì)這個(gè)的處理和對(duì)最后那個(gè)例子上的處理本質(zhì)都是一樣,原生(不打補(bǔ)?。┑腍M系統(tǒng)就是搞不定這個(gè)嘛
"\x -> x x不是typable的" 這是針對(duì)簡(jiǎn)單類(lèi)型lambda演算來(lái)說(shuō),haskell不支持,但是Ocaml打了這個(gè)補(bǔ)丁可以支持哇~
還有那個(gè)fix函數(shù),這就是不動(dòng)點(diǎn)的定義啊,不能叫Y嘛,Y寫(xiě)成那樣的目的就是為了做出fix函數(shù)的樣子來(lái),還不能在式子中出現(xiàn)“fix”這個(gè)名字(不引入名字)。
(我一直在看書(shū)學(xué)習(xí)哇~~ 歡迎交流~~
@Quon 額。?!案叽笊稀笔峭嫘υ?huà)拉,文中提到的那個(gè)做了一次beta變換之后也和定義一致嘛。我倒是覺(jué)得文中的那個(gè)寫(xiě)法沒(méi)有用到額外的擴(kuò)展,更像是用純粹的haskell做出來(lái)的東西,unsafeCoerce則像是給類(lèi)型系統(tǒng)打上的hack
@Quon 這個(gè)unsafeCoerce也是繞過(guò)類(lèi)型檢查嘛,而且不高大上 (逃