rise is a programming language created in 2020.
#3176on PLDB | 4Years Old |
Rise is a functional pattern-based language in the style of Lift. Rise provides a set of data-parallel high-level patterns that are used to describe computations over higher dimensional arrays (aka tensors) in an abstract way. For example, the map pattern applies a given function to every element of the input array. The zip pattern combines two input arrays pairwise to produce an output array of pairs. The reduce pattern is customized with a binary reduction operator (such as addition), a matching neutral element (such as zero), and an input array that is reduced to a single value (such as the sum of all elements).
fun(A : N.K.float => fun(B : K.M.float =>
A |> map(fun(arow =>
B |> map(fun(bcol =>
zip(arow, bcol) |> map(*) |> reduce(+, 0) )) ))))