[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)