自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

初探微軟研究型語言Spec#

開發(fā) 開發(fā)工具
Spec#是一種基于C#的研究型語言。我們可以在.NET 4中找到一些重要的特性,比如:代碼契約,即函數(shù)的前提條件和后置條件都以聲明的方式定義。其他的特性還包括類不變量、非空引用類型和加強的靜態(tài)分析功能。

Spec#是一種基于C#的研究型語言。它是基于契約優(yōu)先的原則,即函數(shù)的前提條件和后置條件都以聲明的方式定義。其他的特性還包括類不變量、非空引用類型和加強的靜態(tài)分析功能。

我們可以在.NET 4中找到一些重要的特性,比如:代碼契約,Spec#當(dāng)前的研究狀況比較尷尬。最近,微軟聲明放寬對它的約束,但也僅是一點而已。獲取了微軟研究共享許可協(xié)議后,Spec#的源代碼已經(jīng)可以從CodePlex站點上下載了。這份許可僅限于非商業(yè)用途。

與Spec#配套的有Boogie,一種用于代碼驗證的中間語言。Boogie并非僅限于.NET,它還支持其他的語言,包括“HAVOC、C語言的驗證程序vcc、Dafny語言和它的驗證程序以及并發(fā)語言Chalice”。

Boogie還是一種工具的名稱。該工具接受Boogie語言的輸入,并隨意地推斷給定Boogie程序的一些不變量,接著生成驗證條件,然后傳給SMT解算程序。默認(rèn)的SMT解算程序是Z3。

Boogie已經(jīng)基于微軟公共許可正式發(fā)布,它符合開源標(biāo)準(zhǔn)。

當(dāng)前微軟把代碼契約定位為今后的發(fā)展方向,這意味著Spec#未來很可能不會有太大的發(fā)展。

 

【編輯推薦】

  1. 新型動態(tài)編程語言Snow簡介
  2. Google推出新編程語言Simple 用于Android開發(fā)
  3. 微軟為SOA打造全新編程語言:D語言?
  4. 淺析.NET平臺編程語言的未來走向
  5. Erlang面向分布與并發(fā)的編程語言
責(zé)任編輯:佚名 來源: InfoQ
相關(guān)推薦

2009-06-24 10:13:30

Nemerle多范型語言

2013-10-11 10:17:21

微軟開源市場

2020-02-18 15:53:09

AI 數(shù)據(jù)人工智能

2024-11-06 15:39:19

2024-01-10 09:50:58

AI 寫作功能CoWriterChatGPT

2024-10-29 13:24:15

2021-12-28 17:32:38

網(wǎng)絡(luò)安全

2022-09-15 12:41:43

微服務(wù)后端前端

2023-11-08 13:17:00

Python解釋型語言

2016-11-21 16:01:48

SPEC

2018-04-25 09:06:32

Chrome瀏覽器語言

2022-07-01 09:20:00

模型研究論文

2019-12-17 11:40:44

Node.js模塊前端

2012-02-09 09:00:54

匯編語言

2009-12-03 14:53:49

.NET Framew

2009-08-31 09:53:54

2009-02-24 10:07:58

開發(fā)微軟蓋茨

2022-09-30 15:28:05

BERT語言模型自然語言

2013-12-10 11:16:53

內(nèi)存數(shù)據(jù)庫TechEd2013
點贊
收藏

51CTO技術(shù)棧公眾號