写点什么

Spec#与 Boogie 发布于 CodePlex

  • 2009-08-10
  • 本文字数:467 字

    阅读完需:约 2 分钟

Spec#是一种基于 C#的研究型语言。它是基于契约优先的原则,即函数的前提条件和后置条件都以声明的方式定义。其他的特性还包括类不变量、非空引用类型和加强的静态分析功能。

我们可以在.NET 4 中找到一些重要的特性,比如:代码契约,Spec#当前的研究状况比较尴尬。最近,微软声明放宽对它的约束,但也仅是一点而已。获取了微软研究共享许可协议后, Spec#的源代码已经可以从 CodePlex 站点上下载了。这份许可仅限于非商业用途。

与 Spec#配套的有 Boogie,一种用于代码验证的中间语言。 Boogie 并非仅限于.NET ,它还支持其他的语言,包括“HAVOC、C 语言的验证程序 vcc、Dafny 语言和它的验证程序以及并发语言 Chalice”。

Boogie 还是一种工具的名称。该工具接受 Boogie 语言的输入,并随意地推断给定 Boogie 程序的一些不变量,接着生成验证条件,然后传给 SMT 解算程序。默认的 SMT 解算程序是 Z3。

Boogie 已经基于微软公共许可正式发布,它符合开源标准。

当前微软把代码契约定位为今后的发展方向,这意味着 Spec#未来很可能不会有太大的发展。

查看英文原文: Spec# and Boogie Released on CodePlex

2009-08-10 04:241658
用户头像

发布了 87 篇内容, 共 22.3 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

【HarmonyOS NEXT】鸿蒙应用点9图的处理(draw9patch)

GeorgeGcs

鸿蒙 draw9patch 应用点9图

具身智能:人工智能的革命——从算法智能到物理智能的范式转移

测试人

人工智能

Spring Boot 与 MyBatis Plus 整合 KWDB 实现 JDBC 数据访问

KaiwuDB

数据库 KaiwuDB

【HarmonyOS NEXT】设备显示白屏 syswarning happended in XXX

GeorgeGcs

设备显示白屏 syswarning happended in XXX

HarmonyOS NEXT 基于原生能力获取视频缩略图

威哥爱编程

HarmonyOS ArkTS HarmonyOS框架 HarmonyOS NEXT

【HarmonyOS NEXT】鸿蒙跳转华为应用市场目标APP下载页

GeorgeGcs

鸿蒙 华为应用市场 目标APP下载页 跳转

YashanDB故障诊断架构

YashanDB

数据库 yashandb

YashanDB故障诊断概念

YashanDB

数据库 yashandb

YashanDB巡检

YashanDB

数据库 yashandb

FeedbackStream:8 分钟创建 AI 面试智能体;Moshi 开源图像理解实时语音模型 MoshiVis 丨日报

声网

【HarmonyOS NEXT】systemDateTime 时间戳转换为时间格式 Date,DateTimeFormat

GeorgeGcs

Date systemDateTime DateTimeFormat

如何在云效中使用 DeepSeek 等大模型实现 AI 智能评审

阿里巴巴云原生

阿里云 AI 云原生

HarmonyOS NEXT 实现拖动卡片背景模糊效果

威哥爱编程

HarmonyOS HarmonyOS框架 HarmonyOS NEXT

Rust 开发者必备:三分钟搞定视频缩略图生成

Yeauty

rust ffmpeg Video media audio

Redis 高可用方案

天翼云开发者社区

redis

淘宝商品SKU信息抓取实战:5步搞定API封装(附代码)

代码忍者

淘宝API接口

【HarmonyOS NEXT】鸿蒙应用使用后台任务之长时任务,解决屏幕录制音乐播放等操作不被挂起

GeorgeGcs

后台任务 长时任务 屏幕录制音乐播放

【HarmonyOS NEXT】鸿蒙应用如何进行页面横竖屏切换以及注意事项,自动切换横竖屏,监听横竖屏

GeorgeGcs

鸿蒙应用 横竖屏切换 自动切换横竖屏 监听横竖屏

联合民生证券,探讨AI技术驱动下的财富管理新范式

非凸科技

AI之山,鸿蒙之水,画一幅未来之家

脑极体

AI

Netty源码—客户端接入流程

不在线第一只蜗牛

Java php 服务器

如何在云效中使用 DeepSeek 等大模型实现 AI 智能评审

阿里云云效

阿里云 云原生 云效

08.面向对象的特性

杨充

【HarmonyOS NEXT】鸿蒙三方应用跳转到系统浏览器

GeorgeGcs

鸿蒙 三方应用 系统浏览器

HarmonyOS:@AnimatableExtend 装饰器自学指南

李游Leo

HarmonyOS HarmonyOS NEXT

SvelteKit 最新中文文档教程(9)—— 部署静态站点与单页应用

冴羽

vue.js 前端 React Svelte SvelteKit

YashanDB健康检查

YashanDB

数据库 yashandb

YashanDB dump

YashanDB

数据库 yashandb

【HarmonyOS NEXT】鸿蒙应用实现屏幕录制详解和源码

GeorgeGcs

鸿蒙 源码 应用 屏幕录制 详解

《Operating System Concepts》阅读笔记:p473-p480

codists

操作系统

【HarmonyOS NEXT】解决自定义弹框遮挡气泡提示的问题

GeorgeGcs

自定义弹框 间隙

Spec#与Boogie发布于CodePlex_.NET_Jonathan Allen_InfoQ精选文章