Language Service Composition Based on Higher Order Functions
To support multi-language activities, various composite services are created by a service composition that combines existing services or changes the combination of services composed by existing composite services. Multi-language activities have a wide variety of domains and their needs may change with the participants or situations, so service composition must be able to freely create various services to suit the languages of the participants and/or domains of the activity targets. Since existing service composition technologies relies on the deployment process of created composite services toward service infrastructure for users to find and execute them, delay and costs are expensive. To solve this problem, we propose a method that introduces the concept of higher order functions. In concrete, we regard services as functions and pass the functions invoked from composite services as runtime parameters of composite services to compose services without any deployment processes, this yields service composition that can efficiently support multi-language activities. We apply the proposals to Language Grid, designed to gather and provide language services, and evaluate the results. They show that our proposals can create various composite services at runtime with quite practical overheads.
KeywordsService composition Higher order functions Aspect oriented programming
This research was supported by a Grant-in-Aid for Scientific Research (S) (24220002, 2012–2016) and a Grant-in-Aid for Young Scientists (A) (17H04706, 2017–2020) from Japan Society for the Promotion of Science (JSPS). Most of this work was done while the first author was a researcher at Department of Social Informatics, Kyoto University.
- 2.Donvito, G., Vicario, S., Notarangelo, P., Balec, B.: The Biovel Project: robust phylogenetic workflows running on the grid. In: EGICF12-EMITC2, pp. 26–30 (2012)Google Scholar
- 3.Erl, T.: Service-Oriented Architecture: Concepts, Technology, and Design. Pearson Education India, Delhi (2005)Google Scholar
- 5.Ide, N., Pustejovsky, J., Cieri, C., Nyberg, E., Wang, D., Suderman, K., Verhagen, M., Wright, J.: The language application grid. In: Chair, N.C.C., Choukri, K., Declerck, T., Loftsson, H., Maegaard, B., Mariani, J., Moreno, A., Odijk, J., Piperidis, S. (eds.) Proceedings of the Ninth International Conference on Language Resources and Evaluation (LREC’14), pp. 22–30. European Language Resources Association (ELRA), Reykjavik, Iceland (2014)Google Scholar
- 6.Ishida, T. (ed.): The Language Grid: Service-Oriented Collective Intelligence for Language Resource Interoperability. Springer Science & Business Media, Berlin (2011)Google Scholar
- 7.Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An overview of Aspectj. In: European Conference on Object-Oriented Programming, pp. 327–354. Springer, Berlin (2001)Google Scholar
- 8.Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.M., Irwin, J.: Aspect-oriented programming. In: European Conference on Object-Oriented Programming, pp. 220–242. Springer, Berlin (1997)Google Scholar
- 9.Lin, D., Shi, C., Ishida, T.: Dynamic service selection based on context-aware QoS. In: 2012 IEEE Ninth International Conference on Services Computing, pp. 641–648 (2012)Google Scholar
- 10.McDermott, D.: Estimated-regression planning for interactions with web services. In: Proceedings of the Sixth International Conference on Artificial Intelligence Planning Systems, pp. 204–211 (2002)Google Scholar
- 11.McIlraith, S., Son, T.C.: Adapting golog for composition of semantic web services. In: Proceedings of the 8th International Conference on Knowledge Representation and Reasoning, pp. 482–493 (2002)Google Scholar
- 12.Murakami, Y., Lin, D., Ishida, T.: Service-oriented architecture for interoperability of multi-language services. In: Buitelaar, P., Cimiano, P. (eds.) Towards the Multilingual Semantic Web, pp. 313–328. Springer, Berlin (2014)Google Scholar
- 14.Schumm, D., Dentsas, D., Hahn, M., Karastoyanova, D., Leymann, F., Sonntag, M.: Web service composition reuse through shared process fragment libraries. In: International Conference on Web Engineering, pp. 498–501. Springer, Berlin (2012)Google Scholar
- 15.Wolstencroft, K., Haines, R., Fellows, D., Williams, A., Withers, D., Owen, S., Soiland-Reyes, S., Dunlop, I., Nenadic, A., Fisher, P., Bhagat, J., Belhajjame, K., Bacall, F., Hardisty, A., Nieva de la Hidalga, A., Balcazar Vargas, M.P., Sufi, S., Goble, C.: The Taverna workflow suite: designing and executing workflows of web services on the desktop, web or in the cloud. Nucleic Acids Res. 41(W1), W557–W561 (2013)CrossRefGoogle Scholar