Abstract
We propose a small-step operational semantics to support reasoning about Web applications written in the multitier language HOP. The semantics covers both server side and client side computations, as well as their interactions, and includes creation of Web services, distributed client-server communications, concurrent evaluation of service requests at server side, elaboration of HTML documents, DOM operations, evaluation of script nodes in HTML documents and actions from HTML pages at client side. We also model the browser same origin policy (SOP) in the semantics. We propose a safety property by which programs do not get stuck due to a violation of the SOP and a type system to enforce it.
- Berry, G. and Boudol, G. 1990. The chemical abstract machine. In Proceedings of the ACM International Conference on Principle of Programming Languages. ACM Press, New York, 81--94. Google Scholar
Digital Library
- Bohannon, A. and Pierce, B. C. 2010. Featherweight Firefox: Formalizing the core of a web browser. In Proceedings of the Usenix Conference on Web Application Development. USENIX Association, Berkeley, CA. Google Scholar
Digital Library
- Boudol, G., Luo, Z., Rezk, T., and Serrano, M. 2010. Towards reasoning for web applications: An operational semantics for hop. In Proceedings of the Workshop on Analysis and Programming Languages for Web Applications and Cloud Applications (APLWACA’10). ACM, New York, NY, 3--14. Google Scholar
Digital Library
- Chlipala, A. 2010. Ur: Statically-typed metaprogramming with type-level record computation. In Proceedings of the International Conference on Programming Languages and Implementation. ACM. Google Scholar
Digital Library
- Chong, S., Liu, J., Myers, A., Qi, X., Vikram, K., Zheng, L., and Zheng, X. 2009. Building secure web applications with automatic partitioning. Comm. ACM 52, 2, 79--87. Google Scholar
Digital Library
- Cooper, E., Lindley, S., Wadler, P., and Yallop, J. 2006. Links: Web programming without tiers. In Proceedings of the 5th International Symposium on Formal Methods for Components and Objects. Springer. Google Scholar
Digital Library
- Cooper, E. E. and Wadler, P. 2009. The rpc calculus. In Proceedings of the 11th ACM SIGPLAN conference on Principles and Practice of Declarative Programming (PPDP’09). ACM, New York, NY, 231--242. Google Scholar
Digital Library
- Felleisen, M. and Hieb, R. 1992. The revised report on the syntactic theories of sequential control and state. Theor. Comput. Sci. 103, 2, 235--271. Google Scholar
Digital Library
- Gardner, P., Smith, G., Wheelhouse, M., and Zarfaty, U. 2008a. DOM: Towards a formal specification. In Proceedings of the ACM SIGPLAN Workshop on Programming Language Technologies for XML (PLAN-X). ACM Press.Google Scholar
- Gardner, P., Smith, G., Wheelhouse, M., and Zarfaty, U. 2008b. Local Hoare reasoning about DOM. In Proceedings of the 27th ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems. ACM Press, 261--270. Google Scholar
Digital Library
- Graunke, P., Findler, R. B., Krishnamurthi, S., and Felleisen, M. 2003. Modeling web interactions. In Proceedings of the European Symposium on Programming. Springer. Google Scholar
Digital Library
- Guha, A., Saftoiu, C., and Krishnamurthy, S. 2010. The essence of JavaScript. In Proceedings of the 24th European Conference on Object-Oriented Programming. Springer. Google Scholar
Digital Library
- Hors, A. L., Hegaret, P. L., Nicol, G., Robie, J., Champion, M., and Byrne, S. 2000. Document Object Model (DOM) level 2 core specification. Tech. rep., W3C.Google Scholar
- Kelsey, R., Clinger, W. D., and Rees, J. 1998. Revised report on the algorithmic language scheme. SIGPLAN Not. 33, 9, 26--76. Google Scholar
Digital Library
- Loitsch, F. and Serrano, M. 2008. HOP Client-side compilation. In Trends in Functional Programming. Vol. 8, M. T. Morazán Ed., Intellect Bristol, UK, 141--158.Google Scholar
- Maffeis, S., Mitchell, J., and Taly, A. 2008. An operational semantics for JavaScript. In Proceedings of the Asian Symposium on Programming Languages and Systems. Springer. Google Scholar
Digital Library
- Matthews, J., Findler, R. B., Graunke, P. T., Krishnamurthi, S., and Felleisen, M. 2004. Automatically restructuring programs for the web. Autom. Softw. Engin. 11, 4, 337--364. Google Scholar
Digital Library
- Queinnec, C. 2000. The inuence of browsers on evaluators. In Proceedings of the ACM SIGPLAN International Conference on Functional Programming. ACM, 23--33. Google Scholar
Digital Library
- Serrano, M. 2009. HOP, a fast server for the di_use web. In Proceedings of the 11th International Conference on Coordination Models and Languages. Lecture Notes in Computer Science, vol. 5521, Springer 1--26. Google Scholar
Digital Library
- Serrano, M., Gallesio, E., and Loitsch, F. 2006. HOP, a language for programming the web 2.0. In Proceedings of the 1st Dynamic Languages Symposium. ACM, New York, NY.Google Scholar
- Serrano, M. and Queinnec, C. 2010. A multi-tier semantics for HOP. In Higher Order and Symbolic Computation. Google Scholar
Digital Library
- Wright, A. K. and Felleisen, M. 1994. A syntactic approach to type soundness. Inf. Comput. 115, 1, 38--94. Google Scholar
Digital Library
Index Terms
Reasoning about Web Applications: An Operational Semantics for HOP
Recommendations
Towards reasoning for web applications: an operational semantics for Hop
APLWACA '10: Proceedings of the 2010 Workshop on Analysis and Programming Languages for Web Applications and Cloud ApplicationsWe propose a small-step operational semantics to support reasoning about web applications written in the multi-tier language Hop. The semantics covers both server side and client side computations, as well as their interactions, and includes creation of ...
A course on web languages and web-based applications
With the growth in the popularity of the World Wide Web (WWW), there is a need to provide education and hands-on training to students in preparing materials for presentation on the Web, developing client and server-side software, and building Web-based ...
End-user programming of web-native interactive applications
CompSysTech '11: Proceedings of the 12th International Conference on Computer Systems and TechnologiesWeb 2.0 has enabled Web users to create and share a variety of hyper-text based artifacts including embedded images, sound, and video on the Web. Creating Web-based interactive artifacts such as computer games, however, has remained a challenge: to end ...






Comments