jaseci-labs/jac
The Jac Programming Language -- The ultimate language for agents to build everything.
它解决了什么问题
Jac 消除了困扰现代全栈开发的“胶水代码”和碎片化工具链。通过提供一种跨越前端、后端和数据模型的单一、经过编译器检查的语言,它消除了对不同表示法(如 SQL、JSON 或 YAML)的需求,并防止了因不同语言和系统之间的边界而导致的错误。
它是如何工作的
Jac 使用一种“多编译器”(polypiler),将整个应用程序视为一个单一的、连续的程序。它编译为 Python 字节码、JavaScript 和原生机器码,允许您使用现有的生态系统(PyPI、npm、C),而无需包装器。它具有“对象空间编程”(Object-Spatial Programming)特性,数据以节点和边的图形式持久化,而“遍历器”(walkers)则在图中携带计算。它还包括渐进式借用检查,允许您仅在需要时选择高性能、内存安全的原生代码。
适用人群
Jac 专为构建复杂、数据驱动型应用程序的开发人员和 AI 代理而设计。它专门针对编码代理进行了优化,提供了一个自文档化的环境,编译器可以在其中捕获原本只会在运行时出现的跨层错误。
亮点
- 一体化工具链: 单个二进制文件即可替代 Python、Node、编译器、包管理器和部署工具。
- 端到端类型安全: 单个编译器检查整个堆栈,将跨层集成错误转化为编译时错误。
- 内置持久化: 数据对象自动持久化,无需手动数据库管理、ORM 或迁移。
- AI 原生: AI 交互被视为类型化的函数调用,编译器强制执行提示结构和返回类型。
- 无缝部署: 无需编写 Dockerfile 或 YAML 配置,即可通过单个命令从笔记本电脑部署到 Kubernetes。
相关
- 项目
- Dispatch
- 项目
- 项目
- 项目