Formal Foundations of Serverless Computing
Abhinav Jangda, Donald Pinckney, Yuriy Brun, Arjun Guha

TL;DR
This paper introduces a formal operational semantics for serverless computing, modeling its low-level details to improve reasoning about serverless functions and their composition.
Contribution
It presents $\lambda_\Lambda$, a small core calculus capturing serverless computing's operational aspects, and demonstrates its applications in reasoning, state management, and function composition.
Findings
$\lambda_\Lambda$ models all observable low-level details of serverless functions.
The simplified semantics precisely characterize when naive and formal semantics coincide.
The extended composition language outperforms prior approaches.
Abstract
Serverless computing (also known as functions as a service) is a new cloud computing abstraction that makes it easier to write robust, large-scale web services. In serverless computing, programmers write what are called serverless functions, and the cloud platform transparently manages the operating system, resource allocation, load-balancing, and fault tolerance. When demand for the service spikes, the platform automatically allocates additional hardware to the service and manages load-balancing; when demand falls, the platform silently deallocates idle resources; and when the platform detects a failure, it transparently retries affected requests. In 2014, Amazon Web Services introduced the first serverless platform, AWS Lambda, and similar abstractions are now available on all major cloud computing platforms. Unfortunately, the serverless computing abstraction exposes several…
Click any figure to enlarge with its caption.
Figure 1
Figure 2
Figure 3
Figure 4Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
