Sintaxis canónica
Índice
- Léxico y declaraciones
- Expresiones y operadores
- Control y funciones
- Módulos, cláusulas y preprocesador
- Diagnóstico y sintaxis retirada
- Directivas condicionales
- Directivas de enlace y librerías
- Cláusulas de target y configuración
- Directivas de ensamblador
- Imports y namespaces
Los archivos Bagron usan indentación significativa y declaraciones explícitas:
public limite: const int32 = 10
inline func sumar(left: int32, right: int32) int32:
return left + right
if limite > 0:
pass
Los comentarios empiezan con ;. Los punteros separan declaración, dirección
y desreferenciación:
value: int32 = 10
pointer *: int32 = $value
(pointer) = 11
Cláusulas de módulo
clause System 'windows'
clause Arch 'amd'
clause Optimizations 'prod'
System, Arch, Boot y Optimizations se validan antes de generar LLVM.
Los módulos importados no cambian el target global.
Formas retiradas
global: los globals públicos se resuelven automáticamente.extern "biblioteca":: ahora se declara el dominio, por ejemploextern windows "kernel32":.packageypackage2: la creación de librerías usalibrary --v1olibrary --v2.@order_lsb: LSB es el layout predeterminado; solo@order_msblo cambia.
El parser conserva diagnósticos específicos para varias formas retiradas, pero no las acepta como sintaxis funcional.