Distributed Async Await
tl;dr
The purpose of this document is to formalize Distributed Async Await-an open, vendor-neutral specification of a programming model based on async await and an underlying scalable and reliable distributed execution model.
- Based on Functions and Promises
- Simple to understand
- Simple to develop
- Simple to operate
Solve complex problems with simple code-Enjoy peace of mind
Context
Today, every application is a concurrent, distributed application. While many popular concurrent programming models have emerged, aiming to improve the developer experience for concurrent applications, no distributed programming models have emerged yet. Distributed Async Await aims to fill that gap.
Purpose
The purpose of this document is to formalize Distributed Async Await-an open, vendor-neutral specification of a programming model for building modern, concurrent and distributed applications with a delightful developer experience.
Do's
- Standard programming model based on Functions and Promises
- Simply protocols
- Open ecosystem
Don'ts
- No proprietary programming models such as workflows and activities
- No complex technology stacks
- No vendor lock-in
Developer experience is often described through two lenses: the subjective lens of developer satisfaction and the objective lens of developer productivity. This specification ties developer experience to simplicity. We posit that a delightful developer experience emerges from systems that are:
- Simple to understand
- Simple to develop
- Simple to operate
Structure of the specification
This specification consits of three prescriptive parts:
- Specification of the programming model
- Specification of the execution model
- Specification of the system model