V0.5.0 release
User Facing Changes
- Natural Numbers have been added to the pipeline, from lambda down to
vampir generation- Added
modulo
logic down the pipeline as well
- Added
- The Lambda Pipeline into Geb now Assumes
24
bits of precision - We now have a new intermediate layer, the
seqn
layer replaces the
bitc
layer as the default, hopefully ending in more optimal code - Made some optimization passes to the vampir backend, along with
breaking those changes into passes - Improved optional value compilation from the lambda level
Internal Changes
- Moved the following generic functions to the generic package
so-eval
width
so-hom-obj
Bug fix
- Fixed a bug where
obj-equalp
would compute equality incorrectly
What's Changed
- Implementation of Natural Numbers by @agureev in #138
- Curly and Brackets Constructors by @agureev in #145
- Add New Division Primitive by @agureev in #146
- Update VampIR Functions and Standard Library by @agureev in #147
- New SeqN Category Introduction by @agureev in #148
- Upgrade so-eval to a Generic by @agureev in #149
- Well-Definedness Predicate for Morphisms by @agureev in #150
- Move so-hom-obj Generic by @agureev in #152
- Move width Generic by @agureev in #153
- Reference Fixes by @agureev in #154
- Add Modulo Functionality to Pipeline by @agureev in #161
- Implement a Reducer for Lambda by @agureev in #162
- to-vampir Arithmetic Optimization by @agureev in #157
- Change Pipeline to Interpret 24-bit Integers by Default by @agureev in #159
- Improve SeqN Gapply Code by @agureev in #160
- Introduce Compilation Through Maybe Monad by @agureev in #163
Full Changelog: v0.4.1...v0.5.0