All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning v2.
- Add typed arrays
- This is a very significant development effort and will be a work in progress for a long time, but this puts the infrastructure in place to maintain homogenous arrays which can be worked on directly, which should have a very significant impact on performance when it's in full use.
- formatting of namespaces and other types •Fmt doesn't know about
- plotting utilities under namespace •cxbqn.plot
- update current documentation, add plotting document
- add native
•file.List
- add native namespace
•cxbqn
with only•cxbqn.config
- native namespace support for
•file.Lines
- cxbqn can now drive ccx.bqn, hopefully making way for full compilation
- Import now searches
BQNPATH
,<prefix>/share/bqn
, and/usr/share/bqn
- Extreme perf now realized after fixing bug in enabling native runtime
- Extreme perf improvements from native modifiers in the runtime
- The following runtime values have some native support:
- NE (≠)
- Rtack (⊢)
- Ltack (⊣)
- JoinTo (∾)
- EnlistPair (⋈)
- Take (↑)
- Drop (↓)
- Constant (˙)
- SelfSwap (˜)
- Each (¨)
- Fold (´)
- Atop (∘)
- Over (○)
- Choose (◶)
- Before (⊸)
- After (⟜)
- Repeat (⍟)
- Begin work on native runtime
- Add some simple native runtime functions
- Add the cxbqn-config utility and install all targets
- Update documentation
- Add FFI as
•_FFI_
- Add swath of CUDA functions under
•_CUDAFor
- Use observer ptrs for most pointers, leak just like CBQN. Huge perf boost.
- Add memory mangement policies
- Significant improvements to the driver
- Working repl
- Readline support for the repl
- made public!
- Significant improvements to the driver
- Significant performance improvements
- Significant improvements to the driver
- support for gcc 9
- Formatter working
- Compiler compiling string
- Passing under, undo, and identity tests
- Pretty backtraces
- passing l1, 2, 3, 4, 5, 6 prim tests
- building compiler
- added support for source locations
- Passing l0 prim tests, still failing a few later prim tests.
- Fixed significant memory management issues. Now fit runtime in 2-4mib of ram.
- passing all simple and primitive tests
- successfully loading runtime
- added some memory management
- memory still going wild when loading the compiler
- VM passing 100% of bytecode tests as described in
BQN/test/cases/bytecode.bqn
- VM passing many simple and primitive tests.
Type
primitive- infrastructure for dynamically generating bytecode tests from upstream BQN repo
- Initial repo. Referring to ebqn-rs for structures and the old bqn javascript runtime to get started.
- Formatting targets
- README, LICENSE, CHANGELOG