Skip to main content

Evolution of a Parallel Task Combinator

  • Chapter
The Beauty of Functional Code

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 8106))

  • 1181 Accesses

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 49.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 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)

    Chapter  Google Scholar 

  2. 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)

    Google Scholar 

  3. 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)

    Google Scholar 

  4. 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)

    Google Scholar 

  5. 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)

    Chapter  Google Scholar 

  6. 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)

    Chapter  Google Scholar 

  7. 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)

    Chapter  Google Scholar 

  8. 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)

    Chapter  Google Scholar 

  9. 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)

    Google Scholar 

  10. 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)

    Chapter  Google Scholar 

  11. 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)

    Google Scholar 

  12. 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)

    Chapter  Google Scholar 

  13. 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)

    Google Scholar 

  14. 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)

    Google Scholar 

  15. 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)

    Google Scholar 

  16. Plasmeijer, R., van Eekelen, M.: Clean language report, version 2.1 (2002), http://clean.cs.ru.nl

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics