Work

Programming language design for service-oriented systems

Year: 2014
Type: dissertation
Abstract: Designing systems in a service-oriented manner, in which application features are decoupled and run as independently executing services over a network, is becoming more commonplace and popular.Service-oriented programming provides a natural way to model and manage many types of systems and allows software development teams to achieve operational flexibility, scalability, and reliability in a cost-effective manner.In particular, it has been used quite successfully for Web and mobile applications.However, building, deploying, and maintaining service-oriented systems is challenging and requires extensive planning, more effort during development, a detailed understanding of advanced networking techniques, and the use of complicated concurrent programming.This thesis presents a new programming language called Silo.Silo integrates features that address key conceptual and pragmatic needs of service-oriented systems that, holistically, are not easily satisfied by existing languages.Broadly, these needs include: a unified distributed programming model, a simple yet efficient construct for concurrency, a familiar yet extensible syntax, and the ability to interoperate with a rich ecosystem of libraries and tools.In this dissertation, I describe how Silo's features, constructs, and conventions satisfy these needs.Then, I present various compiler and runtime techniques used in Silo's implementation.Lastly, I provide a demonstration, through a variety of programming patterns and applications, of how Silo facilitates the design, implementation, and management of service-oriented systems.
Author: Salman Ahmad
Language: English
Open Access status: green
OpenAlex ID: W1592801005
Cites: 60
Cited by:
Related to: 10