Release Notes
1.18.0 (2026-04-25)
Features
- Improve inteface with Arrow; Rename NDArray to Tensor
(#315)
(8f81a5f)
- Move from nanoarrow to arrow c++ as data container backend
(#316)
(ac1622d)
1.17.0 (2026-04-25)
Features
- Add support for common collection functions
(#312)
(26e6b5d)
- Migrate builtin Arrow containers to the Arrow C++ runtime backend
- Add support for context manager (with)
(#311)
(a1f5e63)
- Add support for default arguments
(#309)
(1e2331d)
- Add support for generators (#313)
(64df6d2)
- Define iterables (#310)
(0d002be)
- Implement class abastraction
(#314)
(68422c0)
- Improve collections (#307)
(1125f47)
1.16.0 (2026-04-23)
Features
1.15.0 (2026-04-22)
Features
- Add initial Arrow-backed Tensor support
(#305)
(08cf887)
1.14.0 (2026-04-21)
Features
- Set arrow as builtin backend for arrays
(#304)
(6bf5e3f)
1.13.0 (2026-04-20)
Features
1.12.0 (2026-04-19)
Features
1.11.0 (2026-04-18)
Features
- irx: add fatal AssertStmt lowering and assertion runtime
(#299)
(186c2fe)
1.10.0 (2026-04-15)
Features
- Add FFI as a first-class public layer
(#285)
(bd48dd5)
- add first-class buffer view indexing lowering
(#281)
(341e36e)
- Add initial support for classes
(#290)
(558b05c)
- Add support for import and import from features
(#273)
(dcbe85c)
- Complete the scalar numeric foundation
(#277)
(b2a8b55)
- Define the buffer/view model
(#280)
(f3a8fb4)
- Expand Arrow from MVP to usable scientific interop substrate
(#286)
(0a415b0)
- Formalize the IRx semantic contract
(#276)
(d1157ad)
- Implement class improvement (Stages 2, 3, 4)
(#291)
(531d81b)
- Improve classes - Access control enforcement
(#292)
(7767553)
- Improve Classes - Member access and lowering
(#294)
(80fdb51)
- Improve Classes - Static storage, constants, and mutability
(#295)
(71bff44)
- Improve Classes: Define Construction and initialization
(#293)
(5d1e708)
- Improve diagnostics and source mapping
(#287)
(28b04a1)
- Loop and control-flow hardening for numeric kernels
(#288)
(9e6a975)
- Make booleans first-class across semantics and lowering
(#278)
(7dafa90)
- semantics: harden function signatures and calling conventions
(#284)
(59b6758)
- Stabilize structs/records as the base composite type
(#279)
(dfa3eeb)
1.9.0 (2026-04-02)
Bug Fixes
- codegen: use safe_pop for loop body lowering; use fadd/fsub for float
unary inc and dec (#264)
(326a0db)
- compiler: use fadd instead of add for float loop variables
(#219)
(2922af3),
closes #217
- default vector int division to signed to match scalar behavior
(#205)
(a9bbc72)
- FunctionDef does not emit a return for void functions
(#252)
(d890f24)
Features
- #247: implement set operations (union, intersection, difference, symmetric
difference) (#254)
(2cbe8f7),
closes #247
- #249: implement dict key lookup via SubscriptExpr visitor
(#253)
(e871553),
closes #249
- add BreakStmt and ContinueStmt support in IRx
(#259)
(da55ff2)
- Add initial support for Arrow
(#232)
(ca1a302)
- add LLVM IR codegen for StructDefStmt and tests
(#201)
(9d2498c)
- add minimal LiteralTuple lowering support
(#225)
(9b1f2c6)
- Add structured CommandResult and error handling for run_command
(#215)
(b40b478)
- extend LiteralSet lowering to support mixed-width integer constants
(#231)
(56454ff)
- minimal LiteralDict lowering support
(#174)
(82675e4)
1.8.1 (2026-03-06)
Bug Fixes
- Update astx; mermaid-ascii is optional now
(#206)
(511efba)
1.8.0 (2026-03-06)
Bug Fixes
Features
1.7.0 (2026-03-06)
Bug Fixes
- Fix If statement, add tests, add support for python 3.14
(#195)
(a5c4b5d)
- Fix print for numeric (#196)
(620afbe)
Features
- enforce mutability checking for variable declarations in LLVM-IR builder
(#192)
(f1f4036)
1.6.0 (2026-03-05)
Bug Fixes
- ensure ForRangeLoopStmt condition is checked before loop body execution
(#178)
(6bb3b7f)
- make fast-math toggles work
(#140)
(67f3668)
- set module triple/data layout; drop forced 64-bit size_t override
(#134)
(4361689)
Features
- add minimal LiteralList lowering and tests
(#128)
(3683488)
- Fix incomplete float type detection in binary operations
(#146)
(290d1f1),
closes #137
1.5.0 (2025-11-30)
Bug Fixes
- replace alloca with malloc in strcat to avoid use-after-return
(#131)
(eb7886f)
- use hybrid version approach with importlib and fallback
(#142)
(754ef42)
- zero-extend i1 boolean for correct string printing
(#123)
(9177426)
Features
1.4.0 (2025-08-20)
Bug Fixes
Features
1.3.1 (2025-08-07)
Bug Fixes
1.3.0 (2025-08-06)
Bug Fixes
- Reset the names_values in LLVMLiteIRVisitor
(#66)
(9bcc3e6)
- Fix ForCount Implementation and its tests
(#41)
(3d36157)
- Fix incorrect result handling in Block visitor
(#62)
(538e031)
- Fix issues with symbol table and add test cases for it
(#43)
(a769d79)
- Fix typing with clang (#70)
(1936259)
- ForRangeLoop now checks loop var < end, not end != 0
(#61)
(aad8c2d)
- Rename Function to FunctionDef
(#75)
(da95f82)
- Update astx dependency; improve tests for void
(#79)
(3e147f3)
Features
1.2.1 (2024-05-02)
Bug Fixes
1.2.0 (2024-04-21)
Features
- Replace local customized AST implementation for Target and Module by astx
classes (#13)
(972eba6)
1.1.0 (2024-03-24)
Features
- Improve a several things: documentation, tests, CI, and the usage of ASTx
(#8)
(63393ff)
1.0.2 (2024-01-19)
Bug Fixes
1.0.1 (2024-01-19)
Bug Fixes
1.0.0 (2024-01-19)
Bug Fixes
Features
- Add initial structure and initial translator for LLVM-IR
(#1)
(1c54eb4)
- Rename project to IRx (#9)
(3a85652)
- Replace home-made llvm-ir compiler from llvmlite
(#7)
(daafff3)