[HN Gopher] Structuring Arrays with Algebraic Shapes
___________________________________________________________________
Structuring Arrays with Algebraic Shapes
Author : todsacerdoti
Score : 43 points
Date : 2025-06-27 19:55 UTC (3 hours ago)
(HTM) web link (dl.acm.org)
(TXT) w3m dump (dl.acm.org)
| iamdamian wrote:
| This looks pretty compelling to me. I've been itching for a math-
| friendly language that makes it easy to work with arrays,
| vectors, vector spaces, manifolds, etc., but takes advantage of
| static typing. (Haskell is amazing but doesn't quite make linear
| algebra constructs feel native.)
|
| On first read, it looks like this is designed with a healthy
| balance between mathematical insight (relationship of product
| types and tuples, basis in lambda calculus) and real developer
| needs (e.g., static typic is nice; dependently typed systems can
| be too much; types are great, but "nameless shapes" are useful,
| too).
|
| I'd love to see an implementation of this to play around with.
| b0a04gl wrote:
| > naming axes gives semantic weight to array shapes, but it also
| introduces commitment. like in practice, array shapes mutate fast
| : reshape, squeeze, permute half these ops aren't semantic,
| they're just cleanup to fit the next layer. adding names to that
| doesn't simplify, that adds bookkeeping.
|
| > also naming means locking intent early. once you say 'this axis
| is time', every downstream op inherits that label, even if that
| dim gets folded or split.
|
| it's tradeoffs only
___________________________________________________________________
(page generated 2025-06-27 23:00 UTC)