PrDK: Protocol Programming with Automata
Conference paper
First Online:
Abstract
We present Prdk: a development kit for programming protocols. Prdk is based on syntactic separation of process code, presumably written in an existing general-purpose language, and protocol code, written in a domain-specific language with explicit, high-level elements of syntax for programming protocols. Prdk supports two complementary syntaxes (one graphical, one textual) with a common automata-theoretic semantics. As a tool for construction of systems, Prdk consists of syntax editors, a translator, a parser, an interpreter, and a compiler into Java. Performance in the Nas Parallel Benchmarks is promising.
References
- 1.Arbab, F.: Puff, the magic protocol. In: Agha, G., Danvy, O., Meseguer, J. (eds.) Formal Modeling: Actors, Open Systems, Biological Systems. LNCS, vol. 7000, pp. 169–206. Springer, Heidelberg (2011)CrossRefGoogle Scholar
- 2.Baier, C., Blechmann, T., Klein, J., Klüppelholz, S., Leister, W.: Design and verification of systems with exogenous coordination using Vereofy. In: Margaria, T., Steffen, B. (eds.) ISoLA 2010, Part II. LNCS, vol. 6416, pp. 97–111. Springer, Heidelberg (2010)CrossRefGoogle Scholar
- 3.van Deursen, A., Klint, P., Visser, J.: Domain-specific languages: an annotated bibliography. ACM SIGPLAN Not. 35(6), 26–36 (2000)CrossRefGoogle Scholar
- 4.Frumkin, M., Schultz, M., Jin, H., Yan, J.: Performance and scalability of the NAS parallel benchmarks in Java. In: Proceedings of IPDPS 2003, p. 139 (2003)Google Scholar
- 5.Honda, K., Mukhamedov, A., Brown, G., Chen, T.-C., Yoshida, N.: Scribbling interactions with a formal foundation. In: Natarajan, R., Ojo, A. (eds.) ICDCIT 2011. LNCS, vol. 6536, pp. 55–75. Springer, Heidelberg (2011)CrossRefGoogle Scholar
- 6.Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. In: ACM SIGPLAN Notices, Proceedings of POPL 2008, vol. 43, no. 1, pp. 273–284 (2008)Google Scholar
- 7.Jongmans, S.S.: Automata-Theoretic Protocol Programming. Ph.D. thesis, Universiteit Leiden (2016)Google Scholar
- 8.Jongmans, S.-S.T.Q., Arbab, F.: Take command of your constraints!. In: Holvoet, T., Viroli, M. (eds.) Coordination Models and Languages. LNCS, vol. 9037, pp. 117–132. Springer, Heidelberg (2015)Google Scholar
- 9.Jongmans, S.S., Arbab, F.: Global consensus through local synchronization: a formal basis for partially-distributed coordination. Sci. Comput. Program. 115–116, 199–224 (2016)CrossRefGoogle Scholar
- 10.Jongmans, S.-S.T.Q., Halle, S., Arbab, F.: Automata-based optimization of interaction protocols for scalable multicore platforms. In: Kühn, E., Pugliese, R. (eds.) COORDINATION 2014. LNCS, vol. 8459, pp. 65–82. Springer, Heidelberg (2014)CrossRefGoogle Scholar
- 11.Jongmans, S.S., Santini, F., Arbab, F.: Partially-distributed coordination with reo and constraint automata. Serv. Oriented Comput. Appl. 9(3), 311–339 (2015)CrossRefGoogle Scholar
- 12.van de Nes, M.: Developing Efficient Concurrent C Application Programs Using Reo. Master’s thesis, Universiteit Leiden (2015)Google Scholar
- 13.Yoshida, N., Hu, R., Neykova, R., Ng, N.: The Scribble protocol language. In: Abadi, M., Lluch Lafuente, A. (eds.) TGC 2013. LNCS, vol. 8358, pp. 22–41. Springer, Heidelberg (2014)CrossRefGoogle Scholar
Copyright information
© Springer-Verlag Berlin Heidelberg 2016