Releases: oopsio/peel
Releases · oopsio/peel
v1.1.0
Changelog - Peel Programming Language
[v1.1.0] - 2026-03-30
Added
- SQLite Standard Library (
sqlite):- Integrated
rusqlitefor high-performance database interactions. sqlite.open(path): Opens a database connection (supports":memory:").Connection.execute(sql, params): Executes mutation statements.Connection.query(sql, params): Executes queries and returns anArrayofObjects.Connection.close(): Manually closes connections.
- Integrated
- Loop Support:
- Implemented
for .. in ..loop syntax in the parser and interpreter. - Implemented
whileloop syntax for conditional iteration.
- Implemented
- SQLite Demo: Added
examples/sqlite_demo.pelto showcase database usage.
Improved
- Type System:
- Added support for Heterogeneous Arrays (e.g.,
["Alice", 95.5, true]). The type checker now falls back toUnknownfor mixed-type lists instead of erroring out. - Robust String Concatenation: The
+operator now supports concatenatingStringwith any other type (Int, Float, Bool, Void, etc.) by automatically stringifying the right-hand/left-hand sides.
- Added support for Heterogeneous Arrays (e.g.,
- Standard Library Registration: Unified
sqliteregistration across the runtime interpreter and the type checker.
Fixed
- Fixed a parser bug where
ForandWhilekeywords were present in the lexer but caused "Unexpected token" errors during parsing. - Resolved type mismatch errors when printing mixed database results.
Peel v1.0.0
Changelog
All notable changes to the Peel project will be documented in this file.
[1.0.0] - 2026-03-29
Added
- Core Language:
- Full
async/awaitsupport with nativetokiointegration. - Object-Oriented Programming (OOP) via
structandimpl. - Advanced pattern matching for enum and literal types.
- In-place collection mutation using
Arc<Mutex>shared state.
- Full
- Standard Library (StdLib):
console: Powerful logging withlog,time, and level support.Math: Complete toolkit includingrandom,pow, andsqrt.JSON: Nativeparseandstringifyfor all Peel values.- Prototypes: Instance methods for
String,Array, andMap.
- Tooling:
- pepm: A new, dedicated package manager with dependency resolution and SHA256 verification.
- Unified Build: Multi-crate build orchestration via
scripts/build.js.
- Project Foundation:
- MIT License and comprehensive documentation.
Fixed
- Improved parser greediness for struct literals and blocks.
- Optimized thread-safety for global method registries.
Performance
- Optimized interpreter dispatch for primitive types.
- Leveraged Rust's release-profile optimizations for runtime binaries.