Project Icon

vox

多范式编程语言编译器

Vox是一种受D语言、Jai和Zig启发的多范式编程语言,拥有快速编译和强大的元编程功能。无需依赖其他库,支持脚本和独立程序的即时(JIT)和预先(AOT)编译。兼容Windows、Linux和macOS,计划扩展到更多平台。Vox致力于应用扩展、提高用户生产力和应用性能,提供静态类型和优质错误信息,具备轻量级运行时、嵌入式编译器和条件编译等特性。

Vox 项目介绍

概述

Vox 是一种多范式的编程语言,借鉴了 D 语言(60%)、Jai 语言(30%)和 Zig 语言(10%)的设计理念。它是一种小型、快速的即时编译(JIT)和提前编译(AOT)的编译器,不需要额外的依赖(仅需一个 D 编译器)。

主要特点

  • 快速编译:Vox 以快速编译速度著称。
  • 强大的元编程能力:Vox 支持强大的元编程,这让程序员能够在编译时生成代码。
  • 多用途:支持脚本开发及独立程序开发,适用于 JIT 和 AOT 编译。
  • 零依赖:除编写程序所需的 D 编译器外,Vox 不需依赖任何其他库或包。

与 D 语言的相似之处

Vox 与 D 语言保持高度相似,尤其在以下方面:

  • 语法结构:结构体、函数、枚举、循环控制等。
  • 条件编译和模块/包支持。
  • 模板、可变参数模板与函数。
  • 与 C 的互操作性。

与 D 语言的不同之处

尽管与 D 语言相似,Vox 也有其独特之处:

  • 无垃圾收集:最低限度的运行时支持,没有类(只支持结构体),没有异常处理。
  • 更快的编译时功能(CTFE):优化编译时的特性支持,促进代码生成。
  • 不支持 C++ 的互操作:Vox 专注于 C 的互操作。

支持平台

  • 已支持:Windows-x64、Linux-x64(均为主机和目标平台)、macOS-x64(仅支持 JIT 模式)。
  • 计划支持:Linux-arm64、WebAssembly、Windows-arm64、SPIR-V(适用于 Vulkan/OpenCL/OpenGL 着色器)。

项目目标

Vox 致力于:

  • 强调应用程序扩展性。
  • 最大化用户生产力和应用程序性能。
  • 支持 AOT 和 JIT 编译,插件支持,运行时编译,嵌入式编译器。
  • 提供静态类型支持和出色的错误消息。
  • 提供快速增量编译,降低安装、设置、集成的难度。

语法示例

Vox 的语法类似于 D,以下是一些常用功能的代码示例:

i32 fib(i32 number) {
    if (number < 1) return 0;
    if (number < 3) return 1;
    return fib(number-1) + fib(number-2);
}

struct Point {
    i32 x;
    i32 y;
}

T min[T](T a, T b) {
    if (a < b) return a;
    return b;
}

使用命令行接口

帮助信息可以通过 vox --help 获取,.vx 文件为源码文件,可以使用 vox program.har 进行编译。

编译器与工具

Vox 编译器提供了一些内嵌工具,例如 PDB 文件的内容输出。此外,支持通过 GitHub 定制语法高亮,并且提供 Vim 的语法高亮插件。

编译器统计

  • 实现规模:约 40k 行D语言代码,3MB 可执行文件。
  • 编译时间:调试模式 4s,发布模式 45s。
  • 测试套件运行时间:361 个测试,耗时 95ms。
  • 编译 10MLoC Fibonacci 程序的时间:Windows 上为 8s,Linux 上为 7.5s。

Vox 致力于提供一个高效、易用的编程体验,通过其独特的设计和特性,迎合那些需要快速、高性能编译的开发者需求。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号