2025-11-11T13:46:09.477452

Compiler.next: A Search-Based Compiler to Power the AI-Native Future of Software Engineering

Cogo, Oliva, Hassan
The rapid advancement of AI-assisted software engineering has brought transformative potential to the field of software engineering, but existing tools and paradigms remain limited by cognitive overload, inefficient tool integration, and the narrow capabilities of AI copilots. In response, we propose Compiler.next, a novel search-based compiler designed to enable the seamless evolution of AI-native software systems as part of the emerging Software Engineering 3.0 era. Unlike traditional static compilers, Compiler.next takes human-written intents and automatically generates working software by searching for an optimal solution. This process involves dynamic optimization of cognitive architectures and their constituents (e.g., prompts, foundation model configurations, and system parameters) while finding the optimal trade-off between several objectives, such as accuracy, cost, and latency. This paper outlines the architecture of Compiler.next and positions it as a cornerstone in democratizing software development by lowering the technical barrier for non-experts, enabling scalable, adaptable, and reliable AI-powered software. We present a roadmap to address the core challenges in intent compilation, including developing quality programming constructs, effective search heuristics, reproducibility, and interoperability between compilers. Our vision lays the groundwork for fully automated, search-driven software development, fostering faster innovation and more efficient AI-driven systems.
academic

Compiler.next: Un Compilador Basado en Búsqueda para Potenciar el Futuro Nativo de IA de la Ingeniería de Software

Información Básica

  • ID del Artículo: 2510.24799
  • Título: Compiler.next: A Search-Based Compiler to Power the AI-Native Future of Software Engineering
  • Autores: Filipe R. Cogo (Huawei Canada), Gustavo A. Oliva (Huawei Canada), Ahmed E. Hassan (Queen's University)
  • Clasificación: cs.SE (Ingeniería de Software)
  • Fecha de Publicación: Octubre de 2025 (Manuscrito presentado a ACM)
  • Enlace del Artículo: https://arxiv.org/abs/2510.24799

Resumen

Este artículo propone Compiler.next, un compilador basado en búsqueda diseñado para respaldar sistemas de software nativos de IA en la era de la Ingeniería de Software 3.0. A diferencia de los compiladores estáticos tradicionales, Compiler.next acepta intenciones escritas por humanos y genera automáticamente software funcional mediante la búsqueda de soluciones óptimas. Este proceso implica la optimización dinámica de arquitecturas cognitivas y sus componentes (como plantillas de indicaciones, configuraciones de modelos base y parámetros del sistema), mientras se encuentra el equilibrio óptimo entre múltiples objetivos como precisión, costo y latencia. El artículo describe la arquitectura de Compiler.next y la posiciona como la piedra angular para democratizar el desarrollo de software reduciendo las barreras técnicas, permitiendo software impulsado por IA escalable, adaptable y confiable.

Contexto de Investigación y Motivación

Contexto del Problema

  1. Limitaciones de la Ingeniería de Software Asistida por IA Actual:
    • Los desarrolladores enfrentan sobrecarga cognitiva
    • Baja eficiencia en la integración de herramientas
    • Capacidades limitadas de los copilots de IA
  2. Evolución del Paradigma de Ingeniería de Software:
    • SE 1.0: Era de programación manual
    • SE 2.0: Era asistida por aprendizaje automático
    • SE 3.0: Era nativa de IA con colaboración fluida entre humanos e IA
  3. Complejidad del FMware (Software de Modelos Base):
    • No es simplemente una encapsulación de modelos base
    • Incluye componentes complejos como configuración, recopilación de datos, sistemas RAG, validación de datos y herramientas de análisis
    • Requiere evolución continua en respuesta a datos de retroalimentación

Motivación de la Investigación

  • Los compiladores tradicionales fueron diseñados para entornos estáticos y no pueden manejar los requisitos de adaptación en tiempo real de sistemas impulsados por IA
  • Se necesita una nueva infraestructura de compilación para respaldar la transformación de intenciones a FMware optimizado
  • Implementar verdadero desarrollo impulsado por intenciones, permitiendo que los desarrolladores se enfoquen en "qué hacer" en lugar de "cómo hacerlo"

Contribuciones Principales

  1. Propone la arquitectura de Compiler.next: Un marco de compilador basado en búsqueda capaz de compilar intenciones humanas en FMware optimizado
  2. Define la representación de programas FMware: Incluye combinaciones modulares de Promptware y Agentware
  3. Diseña un mecanismo de optimización multiobjetivo: Optimiza simultáneamente objetivos competitivos como precisión, latencia y costo
  4. Establece 10 llamados a la acción: Proporciona una hoja de ruta sistemática para el desarrollo de compiladores SE 3.0
  5. Implementa una prueba de concepto: Valida la viabilidad del sistema en el benchmark HumanEval-Plus
  6. Proporciona un mecanismo de caché semántico: Mejora significativamente la eficiencia de compilación y reduce costos

Detalles del Método

Definición de la Tarea

Entrada: Intención escrita por humanos (descripción en lenguaje natural de requisitos de software) Salida: Programa FMware optimizado (que contiene plantillas de indicaciones, configuración de arquitectura cognitiva, parámetros del sistema, etc.) Restricciones: Optimización multiobjetivo (equilibrio entre precisión, latencia y costo)

Arquitectura del Modelo

1. Componentes de la Pila Técnica

  • Optimizador de Exploración Cognitiva: Utiliza técnicas como autorreflexión para impulsar inteligentemente el proceso de búsqueda
  • Reescritor de Indicaciones: Mejora y refina la estructura de indicaciones
  • Explorador de Arquitectura: Busca configuraciones óptimas de parámetros RAG y patrones de arquitectura cognitiva
  • Expansor de Escenarios: Expande el entorno de optimización mediante síntesis de nuevos escenarios
  • Optimizador de Búsqueda: Utiliza trayectorias de compilación históricas para mejorar la eficiencia de búsqueda
  • Tiempo de Ejecución de Síntesis Distribuida: Acelera el proceso de síntesis utilizando plataformas distribuidas
  • Motor de Observabilidad del Sintetizador: Respalda la depuración y trazabilidad

2. Mecanismo de Búsqueda

1. Instanciar componentes FMware → 2. Generar configuración específica → 3. Ejecutar inferencia
     ↑                                                                              ↓
6. Aproximador heurístico ← 5. Registrar configuración óptima ← 4. Estimador de errores

Pasos Clave:

  1. Relleno de Plantillas: Instanciar marcadores de posición en plantillas de indicaciones con información de instancias de problemas
  2. Publicar Inferencia FM: Utilizar FM publicado para ejecutar indicaciones instanciadas y generar candidatos de resultados
  3. Evaluar FM: Utilizar FM de evaluación para evaluar la calidad de candidatos de resultados
  4. Autorreflexión (Opcional): Generar retroalimentación de razonamiento sobre cómo mejorar la plantilla de indicaciones
  5. Agregar Puntuaciones de Evaluación: Calcular puntuación de aptitud general en múltiples instancias de problemas
  6. Seleccionar Candidatos: Seleccionar plantillas de alta calidad basadas en puntuaciones de evaluación
  7. Mutación Cruzada: Generar nuevos candidatos mediante operaciones guiadas por FM

3. Modelo Conceptual

  • Operation: Representa componentes de programas FMware, contiene parámetros estáticos y dinámicos
  • Optimizer: Componente conectable que especifica cómo optimizar parámetros de Operation
  • EvaluationBench: Define el formato de etiquetas de oro y la lógica de evaluación utilizada en el proceso de optimización

Puntos de Innovación Técnica

  1. Optimización Pareto Multiobjetivo: Utiliza el algoritmo NSGA-II para optimizar simultáneamente objetivos competitivos, en lugar de combinaciones ponderadas simples
  2. Mecanismo de Caché Semántico: Caché basado en similitud de incrustaciones, equilibrando velocidad de compilación y exploración del espacio de búsqueda
  3. Separación de Preocupaciones: Separa la intención (qué implementar) de la implementación (indicaciones optimizadas y configuración)
  4. Arquitectura Componible: Respalda la optimización conjunta de múltiples componentes FMware interdependientes

Configuración Experimental

Conjunto de Datos

  • HumanEval-Plus: Benchmark de tareas de programación en Python, incluye firmas de funciones y cadenas de documentación
  • División de Datos: 70% como etiquetas de oro para guiar la optimización, 30% para evaluación

Métricas de Evaluación

  1. Precisión: Proporción de soluciones generadas que pasan pruebas unitarias
  2. Latencia: Tiempo de ejecución requerido para evaluar candidatos de soluciones
  3. Costo de Ejecución: Número de tokens consumidos por ejecución (entrada + salida)

Métodos de Comparación

  • Indicación de síntesis inicial vs Indicación optimizada
  • Rendimiento de compilación con caché vs sin caché

Detalles de Implementación

  • Algoritmo de Búsqueda: Algoritmo genético multiobjetivo NSGA-II
  • Tamaño de Población: 10 candidatos de soluciones por tarea
  • Número de Iteraciones: 5 generaciones
  • Umbral de Similitud: 0.85 (distancia euclidiana)
  • Modelos de Prueba: Qwen2.5-7B-Instruct y GPT-4o-mini

Resultados Experimentales

Resultados Principales

ModeloMétricaInicialOptimizadoMejora (%)
Qwen2.5-7B-InstructPrecisión (%)0.260.5646.4
Latencia Promedio (s)14.210.876.6
Tokens Promedio537.1369.368.7
GPT-4o-miniPrecisión (%)0.681.0047.0
Latencia Promedio (s)8.75.042.5
Tokens Promedio500.0417.116.5

Efecto del Mecanismo de Caché

MétricaSin CachéCon CachéDiferencia
Precisión (%)1.000.70-30%
Latencia Promedio (s)5.05.9-18%
Tokens Promedio417.1467.012%
Tiempo de Ejecución Total8m:15s10m:27sAceleración de 22.1%

Hallazgos Experimentales

  1. Mejoras de Rendimiento Significativas: Las indicaciones optimizadas muestran mejoras significativas tanto en precisión como en eficiencia
  2. Equilibrio de Caché: El caché semántico puede reducir significativamente el tiempo de compilación, pero puede limitar la diversidad de búsqueda
  3. Adaptabilidad del Modelo: El método es efectivo para modelos base de diferentes tamaños

Trabajo Relacionado

Compiladores Tradicionales

  • GCC, LLVM: Compilación estática, optimización determinista
  • Limitaciones: No pueden adaptarse a entornos dinámicos impulsados por IA

Compiladores de Aprendizaje Profundo

  • TVM, XLA, Glow: Enfocados en operaciones tensoriales y optimización de hardware
  • Limitaciones: Limitados a arquitecturas de redes neuronales predefinidas, falta de soporte de abstracciones de alto nivel

Compiladores de Indicaciones

  • APE: Método de síntesis de programas en lenguaje natural
  • Promptbreeder: Proceso de búsqueda automejorable
  • EvoPrompt: Optimización de indicaciones mediante algoritmos evolutivos
  • ProTeGi: Simulación de descenso de gradiente para optimización
  • SAMMO: Representación de programas de indicaciones simbólicas
  • DSPy: Optimización de programas FMware de extremo a extremo
  • TextGrad: Optimización basada en retropropagación

Diez Llamados a la Acción

Representación de Programas FMware

  1. Establecer Construcciones de Programación de Calidad: Establecer construcciones semánticas para representar programas FMware
  2. Optimización FMware de Extremo a Extremo: Ir más allá de la optimización de plantillas de indicaciones individuales

Rendimiento Computacional

  1. Heurísticas de Búsqueda Efectivas: Identificar características de indicaciones y parámetros FMware que afecten la salida de FM
  2. Mejoras de Eficiencia y Reducción de Costos: Desarrollar técnicas para reducir latencia y mejorar el rendimiento de compilación

Validación de Resultados

  1. Construcción de Etiquetas de Oro: Crear puntos de datos de alta calidad e independientes
  2. Estimación de Rango de Calidad: Calcular la probabilidad de que FMware ejecute dentro de umbrales de calidad
  3. Compilación Reproducible: Implementar reproducibilidad del proceso de compilación

Prioridades y Objetivos del Usuario

  1. Objetivos de Optimización Definidos por el Usuario: Respaldar optimización multiobjetivo flexible
  2. Interoperabilidad Entre Compiladores: Garantizar interoperabilidad entre diferentes compiladores
  3. Compartición Comunitaria de Trayectorias de Compilación: Establecer plataforma para compartir trayectorias de compilación

Conclusiones y Discusión

Conclusiones Principales

  1. Compiler.next implementó exitosamente la compilación automática de intención a FMware
  2. La optimización multiobjetivo equilibra efectivamente precisión, latencia y costo
  3. El mecanismo de caché semántico mejora significativamente la eficiencia de compilación
  4. El método proporciona un nuevo paradigma para el desarrollo de software en la era SE 3.0

Limitaciones

  1. La implementación actual se enfoca principalmente en componentes Promptware individuales: La optimización de FMware complejo con múltiples componentes requiere investigación adicional
  2. Dependencia de Etiquetas de Oro: Requiere conjuntos de datos de evaluación de alta calidad, lo que puede limitar el alcance de aplicabilidad
  3. Desafíos de Reproducibilidad: El comportamiento no determinista de FM hace que la compilación completamente reproducible sea desafiante
  4. Explosión del Espacio de Búsqueda: El espacio de búsqueda puede volverse difícil de manejar a medida que aumenta el número de componentes

Direcciones Futuras

  1. Estrategias de Optimización Jerárquica: Desarrollar métodos para optimizar componentes FMware complejos en fases
  2. Estrategias de Caché Adaptativo: Ajustar dinámicamente umbrales de similitud para equilibrar eficiencia y diversidad
  3. Interoperabilidad Entre Marcos: Establecer representación intermedia FMware estandarizada
  4. Mecanismos de Aseguramiento de Calidad: Desarrollar métodos más robustos para evaluar la calidad de FMware

Evaluación Profunda

Fortalezas

  1. Innovación Fuerte: Propone por primera vez un marco de compilación sistemático de intención, proporcionando base teórica para SE 3.0
  2. Alto Valor Práctico: Resuelve puntos débiles reales en desarrollo FMware con perspectivas claras de aplicación
  3. Solidez Sistemática: No solo propone soluciones técnicas, sino que proporciona una hoja de ruta completa de investigación y desarrollo
  4. Validación Suficiente: Demuestra viabilidad y efectividad del método mediante prueba de concepto
  5. Escritura Clara: Estructura clara del artículo, descripción técnica detallada, fácil de entender y reproducir

Deficiencias

  1. Alcance de Evaluación Limitado: Validación solo en tareas de generación de código, falta evaluación en otros tipos de tareas
  2. Escalabilidad Desconocida: La capacidad de manejo de sistemas FMware grandes y complejos aún no se ha verificado
  3. Análisis de Costos Insuficiente: Aunque se menciona optimización de costos, falta análisis detallado de costo-beneficio
  4. Integración con Herramientas Existentes: Discusión insuficiente sobre integración con cadenas de herramientas de desarrollo existentes

Impacto

  1. Contribución Académica: Introduce nuevas direcciones de investigación y marco teórico al campo de ingeniería de software
  2. Valor Industrial: Probable que impulse el desarrollo de herramientas de desarrollo de software nativas de IA
  3. Promoción de Estándares: Puede promover el establecimiento de estándares y mejores prácticas de desarrollo FMware
  4. Construcción Comunitaria: Los diez llamados a la acción proporcionan una agenda de investigación clara para la comunidad

Escenarios Aplicables

  1. Desarrollo de Aplicaciones Nativas de IA: Especialmente adecuado para aplicaciones que requieren ingeniería extensiva de indicaciones
  2. Plataformas de Bajo Código/Sin Código: Proporciona capacidades de desarrollo de software a personas no técnicas
  3. Desarrollo Rápido de Prototipos: Respalda transformación rápida de ideas a software funcional
  4. Optimización y Mantenimiento de FMware: Ayuda en optimización continua y evolución de sistemas FMware existentes

Referencias

El artículo incluye 94 referencias que cubren múltiples campos incluyendo ingeniería de software, aprendizaje automático, diseño de compiladores y algoritmos de búsqueda, proporcionando una base teórica sólida para la investigación.


Evaluación General: Este es un artículo excelente con perspectiva de futuro y solidez sistemática. No solo propone soluciones técnicas innovadoras, sino que más importantemente proporciona una visión clara y hoja de ruta para el desarrollo futuro de la ingeniería de software. Aunque requiere perfeccionamiento adicional en ciertos aspectos, sus ideas centrales y diseño de marco abren nuevas posibilidades para la práctica de ingeniería de software en la era de IA.