About the project
Modern software systems are subject to increasingly demanding requirements. Web based apps are being massively deployed: everyone with access to a computational device (e.g., a smartphone) is a critical consumer of software products. While software end-users and service / product providers are becoming aggressively intolerant to any lack of flexibility or reliability of systems, developers struggle to keep up with development and maintenance costs, in a context of fierce competition.
The CLAY project will develop a new programming model and development environment for the interactive construction and evolution of trustworthy software systems “as live artifacts”, following a disruptive vision that raises exciting challenges to programming language design, incremental verification, and usability.
Expected results include a new theory and language based model for verified program control/state plasticity, incremental verification for selected key properties (life cycle conformance, invariants, security), usability patterns for improving the developer experience and, crucially, a webbased, fully working, live development system framework for applications in a specific useful domain (data management).