concat(Vec<T, n>, Vec<T, m>) -> Vec<T, n+m>
matmul(Mat<T, n, m>, Mat<T, m, l>) -> Mat<T, n, l>
head(Vec<T, n+1>) -> (T, Vec<T, n>)
This would have saved me so much headache debugging CUDA kernels and numpy!! I wish it were a first-class feature in those frameworks, and even general-purpose languages, but alas.Turns out, Futhark != https://en.wikipedia.org/wiki/Futhark (runes, old germanic alphabet)
That's like calling your programming language Latin?! The title could use some disambiguation...