Plausible candidates for such paradigms include structured imperative concurrent programming, stream-based programming, concurrent functions with queues, and the use of types for communication and data structures (such as session types and linear types), to name but a few.