

Code Listing 1.


Comparative analysis of AeroLang against existing frameworks_
| Feature | F# Units of Measure | Pint (Python) | Lustre / SCADE | AADL | AeroLang |
|---|---|---|---|---|---|
| Dimensional Safety | Static (Compiletime) | Dynamic (Runtime) | None | Limited (Properties) | Static (Compile-time) |
| Real-Time Semantics | None | None | Synchronous Dataflow | Architectural | Periodic Loops |
| Embedded Compatibility | Low (GC-dependent) | Low (Interpreter) | High (Certified C) | High (Modelling) | High (@EMBEDDED) |
| Aerospace Semantics | General | General | Avionics-oriented | System-oriented | Physics-integrated |
| Runtime Overhead | Minimal | High | Minimal | N/A | No dimensional runtime overhead |
| Morphing Physics Support | No | No | No | No | Integrated Support |
Representative compile-time unit-mismatch errors detected by the AeroLang type checker during authoring of the morphing-wing controller_
| Line | Erroneous Expression | Compiler Diagnostic |
|---|---|---|
| L.47 | FORCE = MASS + ACCEL | ERROR: Unit mismatch: kg is not compatible with m/s2 |
| L.89 | CL = LIFT / VELOCITY | ERROR: Unit mismatch: kg·m·s−2 vs m·s−1 |
| L.112 | SPAN = SPAN + RATE * DT * DT | ERROR: Assign mismatch: m vs m·s |
| L.134 | ERROR = CL_TARGET - LIFT | ERROR: Unit mismatch: 1 vs kg·m·s−2 |
Performance comparison between rigid-wing baseline and AeroLang-generated morphing-wing controller (120 s simulation, nominal wind speed 12 m/s, step disturbances at t = 30 s and t = 80 s)_
| Metric | Rigid Wing | Morphing Wing | Improvement |
|---|---|---|---|
| Mean L/D Ratio | 14.2 | 15.8 | +11.3% |
| CL RMSE | 0.087 | 0.031 | -64.4% |
| Mean Span (m) | 0.800 (fixed) | 0.871 | – |
| Mean Camber | 0.180 (fixed) | 0.193 | – |
| Settling Time (s) | – | 4.2 | – |
| Comp. Overhead | Baseline | +0.3% | Negligible |