Describir: Parallel and Distributed Computing for High-Performance Applications