Vercel Labs presenta Zero, un lenguaje de programación de sistemas diseñado para que los agentes de IA puedan leer, reparar y enviar programas nativos

Laboratorios Vercel
01 / 09 · Descripción general

Cero
El lenguaje de programación
para agentes

Un lenguaje de sistemas experimental que brinda a los agentes de IA diagnósticos estructurados,
metadatos de reparación escritos y documentos legibles por máquina, junto con archivos binarios nativos de menos de 10 KiB.

Lenguaje de sistemas
Agente nativo
v0.1.1
Apache-2.0
Experimental

Contexto
02 / 09 · Por qué existe el cero

El problema del bucle de reparación del agente

La mayoría de los lenguajes de programación producen resultados de compilación escritos para lectores humanos: texto no estructurado que los agentes de IA deben analizar para determinar qué falló y cómo solucionarlo. Esto crea un bucle frágil.

El agente escribe código: el compilador emite un error como texto no estructurado. El agente analiza el texto: el formato del error puede cambiar entre versiones del compilador. Sin sugerencias de reparación: no existe un concepto integrado de “acción de reparación” El ser humano interviene: el bucle requiere intervención manual para resolver los errores

Zero fue diseñado desde el día cero para que los agentes puedan leer el código, interpretar los diagnósticos y reparar el programa, sin traducción humana.

Característica principal
03 / 09 · Diagnóstico JSON

Salida estructurada del compilador

Al ejecutar la verificación cero, json emite diagnósticos legibles por máquina en lugar de texto sin formato. Cada error incluye un código estable, un mensaje humano, un número de línea y un ID de reparación escrito.

$ verificación cero –json { “ok”: falso, “diagnóstico”: [{
“code”: “NAM003”,
“message”: “unknown identifier”,
“line”: 3,
“repair”: { “id”: “declare-missing-symbol” }
}]
} código: los agentes identificadores estables pueden coincidir de manera confiable (NAM003) mensaje: descripción legible por humanos de la reparación del error: los agentes de ID de reparación escritos pueden actuar sin análisis de texto

Característica principal
04 / 09 · Comandos de reparación

explicación cero y corrección cero

Dos subcomandos CLI completan el ciclo de reparación del agente sin necesidad de que los agentes analicen la documentación escrita.

cero explicar
cero explicar NAM003

Devuelve una explicación estructurada de cualquier código de diagnóstico. Los agentes buscan NAM003 directamente, sin necesidad de extraer documentos.

arreglo cero
corrección cero –plan –json add.0

Emite un plan de reparación legible por máquina que describe exactamente qué cambios realizar, sin necesidad de inferencias.

Juntos, zero explicó y zero fix –plan –json permiten que los agentes comprendan los errores y actúen en consecuencia sin traducción humana de la salida del compilador.

Característica principal
05 / 09 · Orientación para agentes

Habilidades cero: Guía para agentes de versiones coincidentes

La mayoría de las herramientas requieren que los agentes eliminen la documentación externa que puede no estar sincronizada con el compilador instalado. Zero resuelve esto sin ninguna habilidad: orientación proporcionada directamente desde la CLI, adaptada a la versión instalada.

cero habilidades obtienen cero – completo

Devuelve flujos de trabajo enfocados para:

Sintaxis cero: fundamentos del lenguaje para la versión actual Diagnóstico: cómo interpretar y actuar sobre la salida del compilador Compilaciones y paquetes: estructura del manifiesto, objetivos y salida Bucles de edición de agentes y pruebas: patrones de flujo de trabajo de validación y reparación

Diseño de lenguaje
06 / 09 · E/S basadas en capacidades

Efectos explícitos y E/S basadas en capacidades

En Zero, si una función toca el mundo exterior, su firma lo dice. No hay ningún objeto de proceso global oculto, ni asíncrono implícito ni globales mágicos.

pub fun main(world: World) -> Void plantea { check world.out.write(“hola desde cero\n”) } world: World — objeto de capacidad; otorga acceso a E/S, sistema de archivos, verificación de red: maneja operaciones falibles; Aparece una falla en la pila de llamadas: indica que la función puede propagar errores: visible en la firma. Aplicación del tiempo de compilación: las capacidades no disponibles se rechazan en el tiempo de compilación, no en el tiempo de ejecución.

Diseño de lenguaje
07 / 09 · Memoria y tamaño

Memoria predecible y binarios diminutos

Zero apunta a entornos donde el tamaño binario y la previsibilidad de la memoria son importantes. No hay ningún impuesto de tiempo de ejecución oculto.

Objetivo binario

< 10 KiB

Ejecutables nativos mediante envío estático, sin GC obligatorio, sin bucle de eventos obligatorio

Compilación cruzada
compilación cero –emit exe \ –target linux-musl-x64 \ add.0 –out .zero/out/add

tamaño cero –json: informa el tamaño del artefacto antes de la generación del código cuando sea posible Sin asignador oculto: la asignación es explícita y visible en el código Exportaciones ABI de C: metadatos de interoperabilidad con reconocimiento de objetivos para los límites de C

Inicio rápido
08 / 09 · Primeros pasos

Instalar y ejecutar cero

Instale el compilador con un único comando curl:

curl -fsSL https://zerolang.ai/install.sh | bash export PATH=”$HOME/.zero/bin:$PATH” cero –versión

Verifique, ejecute y cree su primer programa:

ejemplos de verificación cero/hello.0 ejemplos de ejecución cero/add.0 compilación cero –emit exe –target linux-musl-x64 \ ejemplos/add.0 –out .zero/out/add

Crea un nuevo paquete:

cero nuevo cli hola cd hola cero cheque. && prueba cero. && ejecución cero.

Estado
09 / 09 · Estado actual

Qué está disponible y qué no

v0.1.1 (Experimental): el compilador, la biblioteca estándar y las especificaciones del lenguaje aún no son estables. No hay registro de paquetes; la amplitud del ecosistema se encuentra en una etapa inicial. Compilación cruzada: limitada al subconjunto de destino documentado. Extensión de código VS: resaltado de sintaxis para archivos .0 que se incluyen en el repositorio. Colaboradores: Chris Tate y Matt Van Horn (Vercel Labs)

Documentos e instalación

cerolang.ai

Fuente

github.com/vercel-labs/zero

Zero es un experimento funcional que vale la pena seguir para los ingenieros de IA interesados ​​en el diseño de cadenas de herramientas nativas del agente, que aún no es una dependencia de la producción.