登录
Sail Language Support
分类:工具软件 访问:15 下载量:0

软件介绍

更新时间:2025-06-27

新的介绍内容:

Sail VSCode扩展为编写Sail代码提供了基础支持。Sail是一种用于描述指令集架构(ISAs)语义的编程语言,是RISC-V的官方规范语言,同时也支持ARM和x86的Sail模型。

功能/与官方扩展的区别:

市场上已存在一个Sail扩展,但它仅提供语法高亮功能,且缺少对单行//注释的支持,这一点非常不便。

本扩展虽然基础,但在这两方面有所改进:

  • 修复了//注释的语法高亮。
  • 提供了基础的跳转定义支持。该功能基于词法分析而非语法分析,因此仅在某些情况下有效,但比没有好得多。

目前,我已经开始开发解析器,但遗憾的是Sail语言解析难度较大。此外,Sail尚无正式的模块系统,因此不太适合IDE使用。如果多个文件定义了相同的函数,跳转定义时会随机选择一个。由于唯一可行的编写可扩展Sail文件的方法是,在多个文件中定义相同的函数,然后只编译其中一个,这在RISC-V中用于RV32/RV64和CHERI时非常常见。

许可证:

所有代码均采用MIT许可证(见LICENSE.md),除了syntaxes/sail.tmLanguage.json,该文件是从Sail项目复制而来,采用2条款BSD许可证。

开发:

要构建此扩展,您需要:

  • Rust
  • NPM

然后运行:

./make release

要测试它,请在VSCode中打开此目录并运行(F5或调试->开始调试)。

要构建VSIX包(VSCode扩展包),运行./make package。

本站所有资源都是由网友投稿发布,或转载各大下载站, 请自行检测软件的完整性!

本站所有资源仅供学习与参考,请勿用于商业用途,否则 产生的一切后果将由您自己承担!

如有侵权请联系我们删除下架,联系方式:study_golang@163.com

最新教程

查看更多
  • Golang云原生架构师课程
    Golang云原生架构师课程
    Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
  • MySQL数据管理之备份恢复案例解析视频教程
    MySQL数据管理之备份恢复案例解析视频教程
    《MySQL数据管理之备份恢复案例解析视频教程》MySQL是一个开放源码的小型关联式数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
  • MySQL索引优化解决方案
    MySQL索引优化解决方案
    本套课程是根据MySQL索引的设计理念与数据结构、索引使用场景、索引分类、索引运用场景、索引性能分析、查询优化、MySQL索引的慢查询等组成,主要讲述了MySQL索引优化的解决方案,非常适合有MySQL使用基础或者有一定工作经验的同学。课程讲解了解决大数量查询慢的问题、如何编写一个高效的SQL、查询语句应该如何优化、索引的实现原理是什么、索引又应该如何优化...等诸多SQL索引优化的难点和面试点。
  • 极客学院Docker视频教程
    极客学院Docker视频教程
    Docker是PaaS提供商dotCloud开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源。Docker自2013年以来非常火热,无论是从github上的代码活跃度,还是各大厂商的支持,都使Docker成为了时下最受关注的技术,甚至微软都声称在下一代WindowsServer中集成对Docker的支持。所以我们收集了《极客学院Docke
  • Golang进阶实战编程
    Golang进阶实战编程
    本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
  • JavaScript极速入门
    JavaScript极速入门
    本套课程将帮助大家迅速掌握JavaScript这门高端的、动态的、弱类型编程语言。知识点简单明了,让你学习0压力,适合新手观看学习......