Virgil 是一种编程语言,专为快速、无依赖的程序而设计。它的设计融合了功能性和面向对象的编程范式,以提高表现力和性能。Virgil 的编译器为 JVM 生成优化的独立本机可执行文件、WebAssembly 模块或 JAR。为了在测试和调试中快速周转,程序也可以直接在内置解释器上运行。它非常适合编写小而快的程序,这使得它非常适合构建某些类型的程序,如编译器和虚拟机。它目前被用于虚拟机和编程语言研究,特别是下一代 WebAssembly 虚拟机Wizard的开发。
该存储库包括 Virgil 各种编译目标的整个编译器、运行时系统、一些库、测试、文档和支持代码。
Virgil 专注于平衡静态类型语言中的这些主要特性:
有关更多信息,请参阅教程。或阅读图书馆。
Virgil 可以编译为 Linux 或 Darwin 的本机二进制文件、JVM 的 jar 文件或 WebAssembly 模块。Linux 二进制文件可以使用 Window 的 Linux 系统调用层在 Windows 下成功运行。编译器自然是一个交叉编译器,能够从任何受支持的平台编译到任何其他受支持的平台,因此您只需要能够在其中一个平台上运行即可针对其他任何平台。
Virgil 是完全自托管的:它的整个编译器和运行时系统都是在 Virgil 中实现的。它最初被设计为嵌入式系统的语言,特别是微控制器,但现在支持更多的主流目标。编译器包括复杂的整体程序优化,可实现出色的性能和小型二进制文件。从您的程序编译的本机二进制文件的大小可以小至几百字节,并且在运行时仅消耗千字节的内存。
| 留言与评论(共有 0 条评论) “” |