Skip to content

Vercel construyó un lenguaje para la IA. ¿Por qué?

Vercel acaba de lanzar Zero, un lenguaje de sistemas donde toda la cadena de herramientas habla JSON para agentes de IA. Pero en un mundo donde los LLMs ya dominan Rust y Python, ¿es esta una innovación necesaria o una solución en busca de un problema?

Hero image for: Vercel construyó un lenguaje para la IA. ¿Por qué?
💡

Resumen / Puntos clave

Vercel acaba de lanzar Zero, un lenguaje de sistemas donde toda la cadena de herramientas habla JSON para agentes de IA. Pero en un mundo donde los LLMs ya dominan Rust y Python, ¿es esta una innovación necesaria o una solución en busca de un problema?

Más que un lenguaje: Una cadena de herramientas nativa de IA

Los lenguajes de programación tradicionales presentan los errores del compilador como densas "paredes de texto", optimizadas para la interpretación humana en lugar del procesamiento automático. Estas advertencias y rastros no estructurados, aunque inteligibles para los desarrolladores, representan un obstáculo significativo para los agentes de IA automatizados que intentan depurar y corregir código de forma autónoma. Esta elección de diseño fundamental en las cadenas de herramientas heredadas limita la eficiencia del desarrollo impulsado por IA.

El lenguaje Zero de Vercel replantea radicalmente esta interacción. Toda su cadena de herramientas genera JSON estructurado para cada diagnóstico, cerrando la brecha entre la legibilidad humana y la capacidad de acción de la máquina. Esto incluye detalles precisos como la gravedad, el código de error, la ubicación exacta, los valores esperados y reales, y sugerencias de reparación incrustadas, ofreciendo una vista granular y analizable por máquina de los problemas del código.

La cadena de herramientas de Zero proporciona explícitamente una opción JSON para cada salida, asegurando que los compiladores, linters y otros componentes entreguen datos formateados para el consumo de IA. Los diagnósticos dentro de esta estructura JSON detallan no solo el mensaje de error, sino también su `severity` (gravedad), un `code` (código) único y la `location` (ubicación) precisa en el archivo fuente. Además, incluye campos `help` (ayuda) accionables para el LLM y una calificación de `fix safety` (seguridad de la corrección), que indica si se requiere revisión humana.

Considere el comando `zero fix --json`, un excelente ejemplo de este enfoque nativo de IA. Cuando se invoca, no solo identifica problemas; genera un 'plan' completo y legible por máquina en formato JSON. Este plan describe ediciones específicas, evalúa `safety levels` (niveles de seguridad), define `mode` (modo) y detalla las acciones `applies edit` (aplica edición) y la `self-host repair policy` (política de reparación autoalojada), proporcionando a un LLM todo el contexto necesario para ejecutar reparaciones de código de forma directa y fiable, sin necesidad de una formación extensa o intervención humana.

Código que no puede mentir: La capacidad 'World' de Zero

Zero defiende un principio explícito, exigiendo a los desarrolladores que declaren claramente los efectos secundarios de una función. Fundamental para esto es la capacidad `world`, una anotación obligatoria para cualquier operación de I/O. Esto incluye el acceso a archivos, llamadas de red o incluso simplemente imprimir en la consola. Su presencia señala inmediatamente un efecto secundario de I/O; su ausencia garantiza una función libre de I/O, ofreciendo claridad inmediata tanto a lectores humanos como a la IA.

Este sistema de capacidades permite una seguridad robusta en tiempo de compilación. El compilador rechaza activamente las capacidades no disponibles para un objetivo dado, evitando fallos en tiempo de ejecución. Por ejemplo, intentar acceder al sistema de archivos dentro de una función compilada para un objetivo WebAssembly (WASM), que carece de interacción directa con el sistema de archivos, desencadena un error en tiempo de compilación. Esto previene sorpresas y asegura entornos de ejecución predecibles antes del despliegue.

Más allá de la I/O, Zero extiende la explicitud al manejo de errores. Las funciones que podrían fallar utilizan la palabra clave `raises`, mientras que `check` propaga explícitamente los errores potenciales, reflejando los rigurosos conceptos de seguridad de Rust pero con una implementación distinta y amigable para la IA. Este enfoque integral asegura que el código 'no puede mentir' sobre su comportamiento, un atributo crítico para la generación y reparación de código fiable impulsada por IA.

Una demostración impresionante, una premisa cuestionable

La demostración de Zero de Vercel resultó impresionante. Un LLM, sin entrenamiento previo en el lenguaje, depuró con éxito código Zero utilizando únicamente la salida JSON estructurada de la cadena de herramientas. Esto mostró la visión de agentes de IA comprendiendo y resolviendo errores de programación de forma autónoma, una promesa clave de la cadena de herramientas nativa de IA.

Sin embargo, la premisa de que la IA *necesita* un nuevo lenguaje para esta capacidad merece un examen. Los lenguajes de sistemas establecidos, muy notablemente Rust, han ofrecido salidas de error JSON generadas por el compilador durante años, aunque quizás no con la integración profunda y omnipresente de Zero en cada componente de la cadena de herramientas. El concepto fundamental de diagnósticos legibles por máquina no es del todo novedoso.

Más críticamente, la suposición central sobre las limitaciones de los LLM podría estar equivocada. Los modelos de lenguaje grandes actuales demuestran una notable competencia para analizar y actuar sobre errores de compilador y rastreos de pila tradicionales, legibles por humanos. Se benefician de enormes conjuntos de datos de entrenamiento que abarcan miles de millones de líneas de código y escenarios de depuración asociados en lenguajes existentes. Zero debe superar este inmenso déficit de datos para demostrar su necesidad, especialmente cuando los LLM ya sobresalen trabajando con lenguajes como Python, JavaScript y Rust. Para más detalles, visite el sitio oficial de Zero Programming Language.

Un Vistazo al Futuro, Pero No al Presente

Zero innegablemente presenta una potente prueba de concepto. Vercel demostró con éxito cómo un lenguaje y su cadena de herramientas, construidos desde cero para agentes de IA, pueden desbloquear paradigmas de depuración completamente nuevos. Su salida JSON estructurada, directamente consumible por LLM, y la capacidad explícita `world` para marcar claramente las operaciones de E/S ofrecen un vistazo convincente al futuro desarrollo centrado en la IA.

A pesar de esta visión convincente, Zero se enfrenta a un inmenso obstáculo para su adopción. Los desarrolladores que construyen sistemas de misión crítica o complejos ya confían en ecosistemas maduros profundamente arraigados como Rust, Zig y Go. Estos lenguajes establecidos cuentan con vastas bibliotecas probadas en batalla, herramientas robustas y comunidades vibrantes de las que Zero carece actualmente. Abandonar cimientos tan robustos por un lenguaje naciente, incluso con sus características amigables con la IA, sigue siendo una petición monumental para la mayoría de los equipos de ingeniería.

Es posible que Zero no logre una adopción masiva generalizada, pero su legado podría resultar transformador. El lenguaje presiona a las cadenas de herramientas establecidas para que evolucionen, obligándolas a proporcionar salidas más estructuradas y ricas para los agentes de IA. El audaz experimento de Vercel traza eficazmente un camino sobre cómo todos los lenguajes de programación podrían eventualmente adaptarse a un futuro impulsado por la IA, influyendo en los principios de diseño en lugar de reemplazar directamente las soluciones existentes.

Preguntas Frecuentes

¿Qué es Vercel Zero?

Zero es un nuevo lenguaje de programación de sistemas de Vercel diseñado para la colaboración entre humanos y IA. Toda su cadena de herramientas produce JSON estructurado para ayudar a los agentes de IA a leer, depurar y corregir código sin datos de entrenamiento previos.

¿Qué diferencia a Zero de Rust o Zig?

Aunque también es un lenguaje de sistemas, el diferenciador clave de Zero es su cadena de herramientas prioritaria para la IA que produce JSON estructurado. También cuenta con un sistema de capacidad explícita 'world' para gestionar los efectos secundarios de E/S en tiempo de compilación.

¿Realmente necesita la IA un nuevo lenguaje de programación como Zero?

Este es el debate central. Los defensores argumentan que los datos estructurados de la cadena de herramientas de Zero hacen que la IA sea más fiable. Los escépticos señalan que los LLM ya son competentes en la depuración de lenguajes legibles por humanos como Rust y Python.

¿Qué es la capacidad 'world' en Zero?

La capacidad 'world' es una palabra clave utilizada para marcar explícitamente funciones que realizan operaciones de I/O (como acceso a archivos o llamadas de red). Esto permite al compilador aplicar reglas, como evitar que las compilaciones de web assembly utilicen las API del sistema de archivos.

One weekly email of tools worth shipping. No drip funnel.

one email per week · unsubscribe in two clicks · no third-party tracking

Preguntas frecuentes

¿Qué es Vercel Zero?
Zero es un nuevo lenguaje de programación de sistemas de Vercel diseñado para la colaboración entre humanos y IA. Toda su cadena de herramientas produce JSON estructurado para ayudar a los agentes de IA a leer, depurar y corregir código sin datos de entrenamiento previos.
¿Qué diferencia a Zero de Rust o Zig?
Aunque también es un lenguaje de sistemas, el diferenciador clave de Zero es su cadena de herramientas prioritaria para la IA que produce JSON estructurado. También cuenta con un sistema de capacidad explícita 'world' para gestionar los efectos secundarios de E/S en tiempo de compilación.
¿Realmente necesita la IA un nuevo lenguaje de programación como Zero?
Este es el debate central. Los defensores argumentan que los datos estructurados de la cadena de herramientas de Zero hacen que la IA sea más fiable. Los escépticos señalan que los LLM ya son competentes en la depuración de lenguajes legibles por humanos como Rust y Python.
¿Qué es la capacidad 'world' en Zero?
La capacidad 'world' es una palabra clave utilizada para marcar explícitamente funciones que realizan operaciones de I/O . Esto permite al compilador aplicar reglas, como evitar que las compilaciones de web assembly utilicen las API del sistema de archivos.
🚀Descubre más

Mantente a la vanguardia de la IA

Descubre las mejores herramientas de IA, agentes y servidores MCP seleccionados por Stork.AI.

P.S. ¿Construiste algo que vale la pena usar? Publícalo en Stork — $49

Volver a todas las publicaciones