基於 refinement 的 effect 系統就是形式化驗證領域的人工智慧嗎?

時間 2021-06-02 00:07:26

1樓:

我不清楚怎麼用 refinement 做 effect,但 Koka 肯定是沒有用 refinement。 Koka 的作者也搞了一套 Row polymorphism。他不需要 qualified type support,也沒有 MLPolyR 用的 Remy 那一套,而是搞了一套 scoped labels。

這個比起 MLPolyR 來說可以區分 update fields 和 extend fields。 但他這一套的問題是可以有重複的 label/variant tag。

然後他覺得可以把這個問題看成是 feature,做一套 algebraic effect (和 MLPolyR 一樣也是用 Row Polymorphic Variants 來 model effects),因為很多 Effect 正好也會有重複的 tag ,然後也不需要合併起來反而是 eliminate effects 的時候要乙個乙個 handle。Koka 就是用了這套系統。

2樓:Narc

dafny 和 F* 好像是挺像的,但我沒怎麼寫過不做評價。

但 koka 是真的風評被害。koka 的 effect 沒有基於 refinement,人家是 algebraic effects,而且是完整實現了一套 algebraic effects 的型別系統,不像 eff lang。關於 algebraic effects 可以看看這個 http:

//www.

eff-lang.org/handlers-tutorial.pdf

之前就在知乎上看到 cosmia 噴 koka,但他沒噴到點子上,現在你問的 refinement 也和 koka 沒關係,看到這樣的問題,我渾身發抖,大熱天的全身冷汗,手腳冰涼,地獄空蕩蕩魔鬼在人間,這個知乎還能不能好了,koka 到底要怎樣做你們才能滿意,眼淚不爭氣的流了下來,algebraic effects 何時才能真正的站起來。

pelikan的筆尖EF較好還是F?

鄭濤 我入得現產M800EF,日常記錄粗細剛好,相比現產M400EF還要細一些,所以我用M400描字帖,M800一管鯰魚用近半個月,M400一管極黑用不到一周,我日常記錄內容可能比較少 鋼筆六六 我的m800是ef尖的,等趕明兒用了其他尖再來補充,就先說ef尖的感受吧。書寫順滑,沒有刮紙現象,下水充...

「基於Linux開發的系統是新系統,基於Android的修改版本不是新系統」,這算不算五十步笑百步?

我覺得大家都沒抓到問題的關鍵。Linux是核心而不是完整的作業系統!Linux是核心而不是完整的作業系統!Linux是核心而不是完整的作業系統!平時咱們用的Ubuntu,CentOS,RedHat,Android等都是基於Linux核心的作業系統。定製優化乙個完整的系統,跟基於核心開發新的系統這根本...

基於Bluetooth LE radio的低功耗睡眠耳機方案概述

在很多時刻都有輕生的念頭,但是怕死!怕死了以後爸爸媽媽傷心!印象中最早一次是六歲的時候拿著玻璃片往自己手上割流了一點點血自己吸回去了。現在依舊有這樣的想法,但是還是怕死!怕死了以後爸爸媽媽傷心! 記不清了。當時處在青春期的我時時刻刻想死。那時候家裡出了一些變故。我每天早上醒來看見空無一人的房間。沒有...