PLT 板


LINE

看板 PLT  RSS
※ 引述《jaiyalas (ZZZ)》之銘言: : 據說,這個版的版主之前有嘗試過以這樣的方式來實做 : 也許可以請版主大人稍微講一下實做的心得 = =+ 嗯,我是證人。 因為看不懂所以很快放棄了... XD : Haskell(GHC-6.6.1) : 最一開始使用的語言 : 不過因為他對於dependent type的支援不是很好 : ( 雖說好像有GADT,但是我不太知道那是什麼 : 也許哪個高手可以幫我補充一下,囧> ) : 沒試幾次以後就轉向其他語言了 GADT 是 Generalized Algebraic Datatype. 不過要解釋 generalized XYZ, 就得要先解釋 XYZ... 所以... 等到有 觀眾要求再說好了... Haskell 其實還是沒有要做 dependent type 的意思。 有人說 Haskell 近幾年(包括加入 GADT、日後可能有的type family 等等)的一連串擴充嘗試是往 dependent type 靠近 的過程。但對於跨出這最後幾步,Haskell 似乎還是蠻遲疑的。 畢竟大家對該怎麼做 dependent type 還是沒個共識,而且 有了它之後,程式的風貌可能改很多,這也是大家所陌生的。 Dependent type 聽說倒是在 proof assistants 之中常用到。 GADT 好像就是學來的。 : Omega http://web.cecs.pdx.edu/~sheard/Omega/index.html : 沒有試過,只有看過程式碼 : 感覺語法和Haskell很像 : Epigram http://www.e-pig.org/ : 據說有比較完整的dependent type : 也是我試最久卻最讓人動怒的東西.. : 編輯上,實在是不太好用 : 與其說是個editor,還不如說是一個"填空軟體" 哈哈哈... 其實如果 implement 得好,這是設計者 Conor McBride 心目中理想的 程式環境。你由定義 datatype 開始,然後 IDE 幫你找那個 datatype 的 induction 規則是什麼,程式會長什麼樣子,同時也確保程式會終止。 你就填空就可以了。 (但我的感覺是,這跟 structure editor 不好用的原因一樣。它假設 programmer 寫程式都很有條理、很有結構。但我寫程式都是塗塗抹抹的。) 不過 epigram 只有他自己一個人在寫。聽說是關在房間裡面幾個月什麼 別的事情都不怎麼做... 因為只有一個人所以他選用他比較容易做出原型 的方式:寫成 emacs mode. 所以就變成這副模樣了。 現在他正從 epigram 得到的許多經驗去構思 epigram 2. 聽說人手比較 多了,希望可以有人幫忙把這個界面的使用者經驗弄得好一點... : 語言本身,實在是.. : 難以形容的詭異.. 嗯,這是一個有二度空間語法的語言. 用 - 和 | 等等符號畫格子。 我很難想像它的 parser 怎麼寫的。 : 他另外有一個compiler : 但是難用程度不下於那個editor 好像真的很怒.. 辛苦啦.. : Agda2 http://appserv.cs.chalmers.se/users/ulfn/wiki/agda.php : 現在才要開始嘗試的東西 : 希望會比Epigram好用很多 Orz 我想至少是會比較習慣啦... BTW, Agda 本來也是在 proof assistant 裡面用的語言。 * * * 另外,還可以提一下越來越紅的 proof assistant: Coq. http://coq.inria.fr/ 基本概念上 Coq 也是用 Curry-Howard isomorphism 幫你做證明: 一個 type 就是一個 proposition, 如果找得到一個有這種 type 的 term, 就是找到了一個該 proposition 的證明。為了描述更多 想描述的 proposition, 使用 dependent type 就是蠻自然的事情。 Coq 等等 proof assistant 的使用經驗是使用者一直去和系統對話。 當寫好一個證明(寫出一個 term)之後,Coq 可以 extract 出一個 OCaml 程式給你。(Coq 本身也是用 OCaml 寫的。Agda 則是 Haskell. 設計者的偏好也反應在這兩個語言的語法上... ) Agda 的 Emacs mode 也有一點對話的感覺,但已經比較像程式設計 而不是定理證明。Epigram 是這種互動程式設計的新嘗試。 像 Omega 的做法則是老 programmer 對新 tool 的抗拒 -- 回到 老方法去,死也不改。 :) : 有哪位高手可以提供一點鍛鍊自己邏輯能力的方法.. : 最近覺得自己邏輯沒有學好 : 很多證明的東西常常沒法很快轉過來 欸... 很多 computer scientist (指自己) 其實只會一種證明方法: 歸納法。大概多看多做就會了吧....? --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.109.20.217







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BuyTogether站內搜尋

TOP