Hoja de ruta de desarrollo unificado de Wave + Whale v2
Todas las fases
pre-alpha → pre-beta → alpha → beta → rc → lanzamiento
Fase Pre-Beta
Objetivo: Completar el frontend del lenguaje Wave + Implementar todas las funciones usando el backend LLVM
Características principales
- 
Solo se usa LLVM (sin Whale)
 - 
No hay adiciones de sintaxis, solo implementación de las especificaciones existentes
 - 
Estabilización de la estructura enfocada en el frontend, como mensajes de error, verificación de tipos, y alcance de variables
 
Alcance de implementación
- 
Declaración de variables, salida, operación
 - 
Definición y llamada de funciones
 - 
if / else if / else
 - 
while / break / continue
 - 
Formato de salida, especificación de tipos
 - 
Diseño de punteros (forma
ptr<T>) - 
Diseño de arreglos (
array<T, N>) - 
Verificación de tipos y AST estructurado
 
Tecnologías utilizadas
- 
Rust (todo el compilador Wave)
 - 
LLVM (generación IR, ejecución AOT)
 - 
inkwell / llvm-sys
 
Fase Alpha
Objetivo: Iniciar la adopción de Whale, uso conjunto con LLVM / Comenzar la implementación del backend basado en Whale
Características principales
- 
LLVM es el backend predeterminado
 - 
Whale es el backend opcional
 - 
Es posible bifurcar mediante la opción
--backendal ejecutar el código Wave 
wavec run main.wave --backend=whale
wavec run main.wave --backend=llvm
Trabajos relacionados con Whale
- 
Diseño y definición de la estructura IR de Whale (Instrucción, Valor, Bloque, etc.)
 - 
Implementación de un generador IR para Whale
 - 
Generador de código para Whale (ensamblaje o binario)
 - 
Implementación de tipos posibles solo con Whale (
i1024, punteros avanzados, etc.) 
Punto de control
- 
Salida de Hello World con Whale
 - 
Declaración/asignación de variables en Whale
 - 
Implementación de herramientas de depuración IR para Whale
 - 
Manejo de tipos de puntero en Whale
 - 
Proceso de conversión de Wave a Whale IR
 
Fase Beta
Objetivo: Cambio completo a Whale, eliminación de LLVM. Optimización de la combinación Whale + Wave
Características principales
- 
Solo se usa Whale
 - 
Eliminación completa de LLVM (dependencias y módulos)
 - 
Enfoque en la optimización del código
 - 
Desde IR hasta ejecución de manera rápida y eficiente
 
Alcance de la optimización
- 
Diseño de optimización de Whale IR Pass
 - 
Mejora de la velocidad de generación de código de Whale
 - 
Soporte completo de todas las gramáticas de Wave en Whale
 
Prueba
- 
Prueba unitaria + suite de pruebas completa
 - 
Prueba de compatibilidad del estándar de la biblioteca WSON
 - 
Verificación de la construcción de Whale multiplataforma
 
Etapa de RC (Release Candidate)
Objetivo: Iniciar bootstrap de Wave — Eliminar código Rust por completo
Características principales
- 
Iniciar reescritura del compilador de Wave con Wave
 - 
Ejecución del código de Wave basado en Whale
 - 
Whale ingresa a la etapa de autoalojamiento
 
Alcance del trabajo
- 
Reescribir el generador de Wave IR basado en Whale
 - 
Eliminación de Rust + sustitución por código Wave
 - 
Escritura de las bibliotecas std y core en Wave
 - 
Al nacer el primer compilador nativo de Wave cuando el bootstrap sea exitoso
 
Etapa de lanzamiento (v0.0.1)
Objetivo: Lanzamiento oficial / Provisión de un ecosistema de lenguaje independiente completamente basado en Whale
Componentes
- 
Wave (idioma y biblioteca estándar)
 - 
Whale (cadena de herramientas del compilador)
 - 
Vex (gestor de paquetes)
 - 
WSON (formato de datos)
 
Características
- 
Compilador exclusivo de Wave completo (bootstrap exitoso)
 - 
Optimización de Whale completada
 - 
Establecimiento del sistema de construcción y despliegue de Vex
 - 
Incluye parser WSON + serialización
 - 
Capacidad de construcción entre sistemas operativos (
vex build --windows, etc.) 
Estrategia de meta-desarrollo
| Estrategia | Descripción | 
|---|---|
| Estrategia de tren+riel | Desarrollo concurrente de Whale mientras se configura simultáneamente el backend de Wave | 
| Estrategia de ramificación del backend | Selección de LLVM/Whale con la opción --backend, estructura crucial en la alpha | 
| Plan de inversión de estructura | A partir de rc, el código de Wave se compila a sí mismo a través de Whale |