| Commit message (Collapse) | Author | Age | |
|---|---|---|---|
| * | Fix a few KnownNat in ShS-related TODOs and reword the rest | Mikolaj Konarski | 2 days |
| | | |||
| * | Make arith enums disjoint | Tom Smeding | 2 days |
| | | | | | | | This should prevent operation confusion like calling oxarop_binary_* with IB_QUOT. No error is thrown statically, but at least the nonsense operation crashes reliably at runtime instead of doing, well, nonsense. | ||
| * | Improve haddocks of mvecsUnsafeFreeze | Tom Smeding | 2 days |
| | | |||
| * | Temporarily revert ListS as a newtype over ListX | Mikolaj Konarski | 3 days |
| | | | | | | | | | until a GHC workaround is found. Please revert this commit ASAP so that horde-ad can coerce shaped to mixed things for free (unless the cost of the new WrapJust type turns out to overweight the benefit, which is unlikely, and/or unless unsafeCoerce works without WrapJust somehow). | ||
| * | Make type variables consistent between shaped and mixed lists | Mikolaj Konarski | 3 days |
| | | |||
| * | Remove KnownNat from ListS and express ListS as newtype over ListX | Mikolaj Konarski | 3 days |
| | | | | | as sketched by Tom. | ||
| * | Remove the preposterous shsFromListS and shsFromIxS | Mikolaj Konarski | 3 days |
| | | |||
| * | Generalize shsTakeIx | Mikolaj Konarski | 3 days |
| | | |||
| * | Fix a typo in IntElt Int | Mikolaj Konarski | 4 days |
| | | |||
| * | Add method mvecsUnsafeFreeze and use it | Mikolaj Konarski | 5 days |
| | | |||
| * | Speed up the bad case of mvecsReplicate using mvecsWriteLinear | Mikolaj Konarski | 5 days |
| | | |||
| * | Generalize ix?ToLinear and speed it up a bit | Mikolaj Konarski | 6 days |
| | | |||
| * | Add INLINEABLE to ixxToLinear ahead of generalization, to benchmark | Mikolaj Konarski | 6 days |
| | | | | | No horde-ad test speedup noticed. | ||
| * | Express mvecsWrite and mvecsWritePartial using the new methods | Mikolaj Konarski | 6 days |
| | | | | | | | | and change the type of the latter to make it possible. This slightly improves performance of horde-ad tests, before horde-ad even starts using the Linear methods, which improves performance even more. | ||
| * | Add mvecsWriteLinear and mvecsWritePartialLinear (unused yet) | Mikolaj Konarski | 6 days |
| | | |||
| * | Add mvecsReplicate | Mikolaj Konarski | 7 days |
| | | |||
| * | XArray: Fix doc comment on ravelOuterNHEADmaster | Tom Smeding | 9 days |
| | | |||
| * | Improve runtime and streaming of fromListOuter | Mikolaj Konarski | 9 days |
| | | |||
| * | Inlining magic | Tom Smeding | 11 days |
| | | |||
| * | Restore suffixes sharing in *FromLinear | Tom Smeding | 11 days |
| | | | | | Thanks Mikolaj for spotting it's broken | ||
| * | Make shsFromList even more const-like | Mikolaj Konarski | 12 days |
| | | |||
| * | Add a missing INLINEABLE for ixsToList | Mikolaj Konarski | 12 days |
| | | |||
| * | Define {list,sh,ix}*ToList functions using 'build' | Tom Smeding | 12 days |
| | | | | | This should allow foldr/build fusion | ||
| * | template-haskell is now used unconditionally | Tom Smeding | 12 days |
| | | |||
| * | Let sh*FromList functions print proper error messages | Tom Smeding | 12 days |
| | | |||
| * | Provide ix*FromLinear for all three shape kinds | Tom Smeding | 12 days |
| | | | | | This speeds up {r,s}generatePrim | ||
| * | Doc comments | Tom Smeding | 12 days |
| | | |||
| * | Style and uniformity of shape/index/list functions | Tom Smeding | 12 days |
| | | |||
| * | Generalize mgeneratePrim to potentially avoid @fmap fromIntegral@ | Mikolaj Konarski | 12 days |
| | | |||
| * | Define mgeneratePrim as a fast special case variant | Mikolaj Konarski | 13 days |
| | | |||
| * | Simplify genShRwithTarget a little | Mikolaj Konarski | 13 days |
| | | |||
| * | Unify fromList functions for shapes | Mikolaj Konarski | 13 days |
| | | |||
| * | Don't call continuation-based functions just *FromList | Mikolaj Konarski | 13 days |
| | | |||
| * | Unify toList functions for shapes | Mikolaj Konarski | 13 days |
| | | |||
| * | Expose the unfolding of the indexing operations | Mikolaj Konarski | 13 days |
| | | |||
| * | Inline all higher order shape functions | Mikolaj Konarski | 2025-11-30 |
| | | |||
| * | Optimize X.index, but measurements unconclusive | Mikolaj Konarski | 2025-11-27 |
| | | |||
| * | Add INLINEABLE on ixxFromLinear | Tom Smeding | 2025-11-26 |
| | | |||
| * | Benchmark and improve ixxFromLinear | Tom Smeding | 2025-11-26 |
| | | |||
| * | Commit Tom's new code for sh?Enum functions | Mikolaj Konarski | 2025-11-26 |
| | | |||
| * | Update doc comment in Trace | Tom Smeding | 2025-11-24 |
| | | |||
| * | Export PermR from top-level | Tom Smeding | 2025-11-24 |
| | | |||
| * | trace: Print arguments and return value | Tom Smeding | 2025-11-24 |
| | | |||
| * | Fix error messages for pi/fromRational in Mixed | Tom Smeding | 2025-11-22 |
| | | | | | Thanks Mikolaj! | ||
| * | Generalise sh?Enum functions to arbitrary Num | Tom Smeding | 2025-11-18 |
| | | | | | | | | The explicit usage at Int in the non-primed versions of the functions results in an auto-generated SPEC rule at Int, so even without any SPECIALIZE pragmas, using sh?Enum' at Int should not (need to) result in multiple specialisations. | ||
| * | Up base bound to 4.23 (seems to work fine with GHC 9.14-RC) | Tom Smeding | 2025-11-18 |
| | | |||
| * | Add shsEnum and shrEnum | Tom Smeding | 2025-11-18 |
| | | |||
| * | Also replace replicateScal -> replicatePrim in error messages | Tom Smeding | 2025-11-18 |
| | | |||
| * | Make first type arg of {m,s}emptyArray the shape | Tom Smeding | 2025-11-17 |
| | | |||
| * | Rename, organise and cleanup | Tom Smeding | 2025-11-17 |
| | | | | | | | | Renamings: - *sumOuter1 -> *sumOuter1Prim - *rerank -> *rerankPrim - *replicateScal -> *replicatePrim | ||
