Abstract
The development of experimental software is rarely straightforward. If you start making something you don’t understand yet, it is very unlikely you get it right at the first try. The iTask system has followed this predictably unpredictable path. In this system, where combinator functions are used to construct interactive workflow support systems, the core set of combinator functions has changed along with progressed understanding of the domain. Continuous work on this system led to the emergence of a new programming paradigm for interactive systems: Task-Oriented Programming (TOP). In this paper we reconstruct the evolution of one of the core iTasks combinators to catch a glimpse of this emergence. The combinator is the parallel combinator that facilitates the composition of multiple concurrent tasks into a single one. We reconstruct its evolution from the written record in the form of published papers and discuss this reconstruction and what it tells about the progressed understanding of programming with tasks.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Henrix, J., Plasmeijer, R., Achten, P.: GiN: A graphical language and tool for defining iTask workflows. In: Peña, R., Page, R. (eds.) TFP 2011. LNCS, vol. 7193, pp. 163–178. Springer, Heidelberg (2012)
Jansen, J., Koopman, P., Plasmeijer, R.: Web based dynamic workflow systems and applications in the military domain. In: Hupkens, T., Monsuur, H. (eds.) Netherlands Annual Review of Military Studies - Sensors, Weapons, C4I and Operations Research, pp. 43–59 (2008)
Jansen, J., Lijnse, B., Plasmeijer, R., Grant, T.: Web based dynamic workflow systems for C2 of military operations. In: Revised Selected Papers of the 15th International Command and Control Research and Technology Symposium, ICCRTS 2010, Santa Monica, CA, USA (June 2010)
Jansen, J., Plasmeijer, R., Koopman, P., Achten, P.: Embedding a web-based workflow management system in a functional language. In: Brabrand, C., Moreau, P. (eds.) Proceedings 10th Workshop on Language Descriptions, Tools and Applications, LDTA 2010, Paphos, Cyprus, March 27-28, pp. 79–93 (2010)
Koopman, P., Plasmeijer, R., Achten, P.: An executable and testable semantics for iTasks. In: Scholz, S.-B., Chitil, O. (eds.) IFL 2008. LNCS, vol. 5836, pp. 212–232. Springer, Heidelberg (2011)
Lijnse, B., Plasmeijer, R.: iTasks 2: iTasks for end-users. In: Morazán, M.T., Scholz, S.-B. (eds.) IFL 2009. LNCS, vol. 6041, pp. 36–54. Springer, Heidelberg (2010)
Michels, S., Plasmeijer, R., Achten, P.: iTask as a new paradigm for building GUI applications. In: Hage, J., Morazán, M.T. (eds.) IFL 2010. LNCS, vol. 6647, pp. 153–168. Springer, Heidelberg (2011)
Plasmeijer, R., Achten, P., Koopman, P.: An introduction to iTasks: Defining interactive work flows for the web. In: Horváth, Z., Plasmeijer, R., Soós, A., Zsók, V. (eds.) CEFP 2007. LNCS, vol. 5161, pp. 1–40. Springer, Heidelberg (2008)
Plasmeijer, R., Achten, P., Koopman, P.: iTasks: executable specifications of interactive work flow systems for the web. In: Hinze, R., Ramsey, N. (eds.) Proceedings of the International Conference on Functional Programming, ICFP 2007, Freiburg, Germany, pp. 141–152. ACM Press (2007)
Plasmeijer, R., Achten, P., Koopman, P., Lijnse, B., van Noort, T.: An iTask case study: A conference management system. In: Koopman, P., Plasmeijer, R., Swierstra, D. (eds.) AFP 2008. LNCS, vol. 5832, pp. 306–329. Springer, Heidelberg (2009)
Plasmeijer, R., Achten, P., Koopman, P., Lijnse, B., van Noort, T., van Groningen, J.: iTasks for a change - Type-safe run-time change in dynamically evolving workflows. In: Khoo, S., Siek, J. (eds.) Proceedings of the Workshop on Partial Evaluation and Program Manipulation, PEPM 2011, Austin, TX, USA, pp. 151–160. ACM Press (2011)
Plasmeijer, R., Achten, P., Lijnse, B., Michels, S.: Defining multi-user web applications with iTasks. In: Zsók, V., Horváth, Z., Plasmeijer, R. (eds.) CEFP 2011. LNCS, vol. 7241, pp. 46–92. Springer, Heidelberg (2012)
Plasmeijer, R., Jansen, J., Koopman, P., Achten, P.: Declarative Ajax and client side evaluation of workflows using iTasks. In: Proceedings of the 10th International Conference on Principles and Practice of Declarative Programming, PPDP 2008, Valencia, Spain, July 15-17, pp. 56–66 (2008)
Plasmeijer, R., Lijnse, B., Achten, P., Michels, S.: Getting a grip on tasks that coordinate tasks. In: Proceedings Workshop on Language Descriptions, Tools, and Applications (LDTA), SaarbrĂĽcken, Germany, March 26-27 (2011)
Plasmeijer, R., Lijnse, B., Michels, S., Achten, P., Koopman, P.: Task-Oriented Programming in a Pure Functional Language. In: Proceedings of the 2012 ACM SIGPLAN International Conference on Principles and Practice of Declarative Programming, PPDP 2012, Leuven, Belgium, pp. 195–206. ACM (September 2012)
Plasmeijer, R., van Eekelen, M.: Clean language report, version 2.1 (2002), http://clean.cs.ru.nl
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Lijnse, B. (2013). Evolution of a Parallel Task Combinator. In: Achten, P., Koopman, P. (eds) The Beauty of Functional Code. Lecture Notes in Computer Science, vol 8106. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-40355-2_14
Download citation
DOI: https://doi.org/10.1007/978-3-642-40355-2_14
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-40354-5
Online ISBN: 978-3-642-40355-2
eBook Packages: Computer ScienceComputer Science (R0)