1. A non-transitory computer-readable medium to store instructions, the instructions comprising: one or more instructions that, when executed by at least one processor, cause the at least one processor to: receive a call to a function in a function library: the function library including a plurality of functions, the function including a characteristic, and the function operating on a distributable array; determine a distribution scheme for the distributable array, the one or more instructions to determine the distribution scheme including: one or more instructions to evaluate the distributable array, and one or more instructions to evaluate the characteristic of the function; and partition the distributable array into parts based on the determined distribution scheme.