7、CASM-IR与Event-B在系统建模中的应用解析

CASM-IR与Event-B在系统建模中的应用解析

1. CASM-IR系统实现与特性

CASM系统实现以库依赖图的形式呈现,其运行时和后端库基于对应的CASM无感知即时发射语言(CJEL)库,所有库均采用C++11/14标准实现。

CASM-IR模型的实现包含两个主要基类:Type和Value。类型系统和类型层次结构依据特定定义实现,其他模型实例均为Value类的子类,这种设计借鉴自LLVM编译器项目。CASM-IR实现提供了丰富的应用程序编程接口(API),通过内部类型映射结构可获取所有定义的类型关系,实现了前端语言定义与IR内部的清晰分离。

基于CASM-IR设计的CASM语言前端,其抽象语法树(AST)的设计比以往更简单清晰,因为类型、运算符和内置函数的设计决策已在CASM-IR实现中完成,AST仅关注输入语言本身。CASM是一种静态强类型推断语言,前端输入规范语言与CASM-IR模型的区别在于,前端语言需要符号解析器、类型检查器和类型推断过程来对解析后的输入规范AST表示进行完整类型化。在分析过程中,前端使用CASM-IR的API查询和检查特定类型、内置函数和运算符是否存在,并通过预定义的类型关系推断正确类型。此外,前端工程师还可直接调用CASM-IR的评估工具函数进行运算符指令和内置函数的计算。

以下是CASM-IR相关的依赖关系表格:
| 组件 | 依赖关系 |
| — | — |
| CASM运行时库 | 依赖CJEL运行时库 |
| CASM后端库 | 依赖CJEL后端库 |
| 前端 | 使用CASM-IR API |

2. 相关ASM实现工作
    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值