Building Parallel, Embedded, and Real-Time Applications with Ada