NumPy: Um relacionamento de amor e ódio com a biblioteca de arrays do Python

Este artigo mergulha nos pontos problemáticos do uso do NumPy, a popular biblioteca de computação de arrays do Python, ao lidar com arrays multidimensionais. Embora o NumPy se destaque por sua simplicidade e eficiência para arrays de dimensões inferiores, seu mecanismo de broadcast e indexação se tornam incrivelmente complexos e difíceis de entender ao lidar com operações multidimensionais mais intrincadas. O autor argumenta que o problema central do NumPy decorre de seu mecanismo de broadcast substituir os índices, resultando em expressividade limitada. O artigo utiliza vários exemplos para destacar as dificuldades do NumPy com cálculos de arrays complexos, comparando os prós e contras do uso de loops e np.einsum, expressando, por fim, frustração com o NumPy e o desejo por uma linguagem de arrays mais amigável ao usuário.