3.4 KiB
3.4 KiB
Changelog
Todos los cambios notables en este proyecto serán documentados en este archivo.
El formato está basado en Keep a Changelog, y este proyecto adhiere a Semantic Versioning.
[Unreleased]
Agregado
- Soporte para más optimizaciones
- Mejores mensajes de error
- Soporte para más extensiones de C
Cambiado
- Mejorado rendimiento del parser
- Optimizada generación de código
Corregido
- Problemas de compilación en sistemas de 32 bits
- Manejo de errores en el enlazador
[0.1.1] - 2025-08-23
Agregado
- ✅ Operadores compuestos: Implementados +=, -=, *=, /= con soporte completo
- ✅ Operadores bitwise: Agregados &, |, ^, ~, <<, >> con precedencia correcta
- ✅ Suite de tests: Tests de integración completamente funcionales (10/10 pasando)
- ✅ Benchmarks: Sistema de benchmarks con métricas de rendimiento
- ✅ Soporte biblioteca: Configuración dual binario/biblioteca para tests
- ✅ Recursión mejorada: Soporte completo para funciones recursivas (factorial, fibonacci)
Cambiado
- 🔧 Limpieza de código: Eliminados todos los warnings de compilación (32 → 0)
- 📝 Documentación actualizada: README con limitaciones actuales clarificadas
- 🏗️ Arquitectura mejorada: Mejor separación de módulos con lib.rs
Corregido
- 🐛 Headers locales: Eliminada dependencia del directorio include/ local
- 🔨 Patrones inalcanzables: Corregidos match patterns redundantes
- ⚠️ Imports sin usar: Limpiados todos los imports y variables no utilizados
Removido
- ❌ Directorio include/: Eliminado directorio include/ y referencias obsoletas
[0.1.0] - 2025-08-21
Agregado
- Implementación inicial del compilador ALECC
- Soporte para arquitecturas i386, AMD64 y ARM64
- Lexer completo para C/C++
- Parser básico para programas simples
- Generador de código para las tres arquitecturas
- Sistema de optimización con múltiples niveles (-O0 a -O3, -Os, -Oz)
- Enlazador con soporte para bibliotecas estáticas y dinámicas
- Compatibilidad básica con opciones de GCC
- Interfaz de línea de comandos completa
- Sistema de preprocesado básico
- Soporte para inclusión de archivos de cabecera
- Manejo de errores robusto
- Tests de integración y benchmarks
- Documentación completa en README.md
- Scripts de construcción automatizada
- Configuración para CI/CD con GitHub Actions
Características Principales
- Alto Rendimiento: Escrito en Rust para máxima eficiencia
- Seguridad: Manejo seguro de memoria y detección temprana de errores
- Compatibilidad: Compatible con opciones de línea de comandos de GCC
- Multiplataforma: Soporte nativo para múltiples arquitecturas
- Optimización: Sistema avanzado de optimización de código
Limitaciones Conocidas
- Soporte limitado para características avanzadas de C++
- Preprocesador simplificado
- Algunas optimizaciones están en desarrollo
- Compatibilidad parcial con extensiones específicas de GCC
Documentación
- README.md completo con ejemplos de uso
- Documentación de API en código
- Ejemplos de programas de prueba
- Guía de contribución
Herramientas de Desarrollo
- Makefile para tareas comunes
- Scripts de construcción automatizada
- Configuración de EditorConfig
- Benchmarks de rendimiento
- Tests de integración completos