ACM Home Page
Please provide us with feedback. Feedback
From sequential programs to multi-tier applications by program transformation
Full text PdfPdf (627 KB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages table of contents
Long Beach, California, USA
Pages: 221 - 232  
Year of Publication: 2005
ISBN:1-58113-830-X
Also published in ...
Authors
Matthias Neubauer  Universität Freiburg, Germany
Peter Thiemann  Universität Freiburg, Germany
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 8,   Downloads (12 Months): 67,   Citation Count: 9
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1040305.1040324
What is a DOI?

ABSTRACT

Modern applications are designed in multiple tiers to separate concerns. Since each tier may run at a separate location, middleware is required to mediate access between tiers. However, introducing this middleware is tiresome and error-prone.We propose a multi-tier calculus and a splitting transformation to address this problem. The multi-tier calculus serves as a sequential core programming language for constructing a multi-tier application. The application can be developed in the sequential setting. Splitting extracts one process per tier from the sequential program such that their concurrent execution behaves like the original program.The splitting transformation starts from an assignment of primitive operations to tiers. A program analysis determines communication requirements and inserts remote procedure calls. The next transformation step performs resource pooling: it optimizes the communication behavior by transforming sequences of remote procedure calls to a stream-based protocol. The final transformation step splits the resulting program into separate communicating processes.The multi-tier calculus is also applicable to the construction of interactive Web applications. It facilitates their development by providing a uniform programming framework for client-side and server-side programming.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
 
3
4
 
5
 
6
 
7
8
 
9
X. Leroy. The Objective Caml system release 3.02, Documentation and user's manual. INRIA, France, July 2001. http://pauillac.inria.fr/caml.
 
10
11
 
12
 
13
 
14
 
15
16
 
17
F. Tip. A survey of program slicing techniques. J. Programming Languages, 3(3):121--189, 1995.
18
19
 
20

CITED BY  9

Collaborative Colleagues:
Matthias Neubauer: colleagues
Peter Thiemann: colleagues