A Distributed Dynamic Architecture for Task Oriented Programming

Task Oriented Programming (TOP) is a special flavor of functional programming for real-world application domains in which people and automated systems collaborate to achieve a common goal. The original iTasks framework, which implements TOP, uses a single server multi-client architecture. This is not suited for truly distributed application domains, such as deployed by the Dutch coast guard. In this paper we show how to turn this architecture into a distributed, dynamic, architecture. This is done in an elegant way, by building on the core concepts of TOP and iTasks.

[1]  Jérôme Vouillon,et al.  Eliom: A Core ML Language for Tierless Web Programming , 2016, APLAS.

[2]  Jan Martin Jansen,et al.  From Interpretation to Compilation , 2008, CEFP.

[3]  Marinus J. Plasmeijer,et al.  iTasks: executable specifications of interactive work flow systems for the web , 2007, ICFP '07.

[4]  Marinus J. Plasmeijer,et al.  Task Oriented Programming with Purely Compositional Interactive Scalable Vector Graphics , 2014, IFL.

[5]  Joe Armstrong,et al.  Concurrent programming in ERLANG , 1993 .

[6]  Rinus Plasmeijer,et al.  Incidone: A Task-Oriented Incident Coordination Tool , 2012 .

[7]  Claes Wikström,et al.  Concurrent programming in ERLANG (2nd ed.) , 1996 .

[8]  Gerhard Weikum,et al.  From Centralized Workflow Specification to Distributed Workflow Execution , 1998, Journal of Intelligent Information Systems.

[9]  Baolin Yin,et al.  Application-level Web Component Framework for Distributed Workflow Management , 2013 .

[10]  Bill Karakostas,et al.  A peer to peer (P2P) architecture for dynamic workflow management , 2004, Inf. Softw. Technol..

[11]  Bas Lijnse,et al.  Editlets: type-based, client-side editors for iTasks , 2014, IFL.

[12]  Bas Lijnse,et al.  Task-oriented programming in a pure functional language , 2012, PPDP.

[13]  Jan Martin Jansen,et al.  Efficient interpretation by transforming data types and patterns to functions , 2006, Trends in Functional Programming.

[14]  Arjen van Weelden,et al.  Putting Types To Good Use , 2007 .

[15]  Bas Lijnse,et al.  iTasks 2: iTasks for End-users , 2009, IFL.

[16]  Marinus J. Plasmeijer,et al.  An Introduction to Task Oriented Programming , 2013, CEFP.

[17]  Bas Lijnse,et al.  Parametric lenses: change notification for bidirectional lenses , 2014, IFL.

[18]  Ralf Hinze,et al.  A new approach to generic functional programming , 2000, POPL '00.

[19]  Jan De Clercq,et al.  Single Sign-On Architectures , 2002, InfraSec.