Task Oriented Programming is a programming paradigm that enhances 'classic' functional programming with means to express the coordination of work among people and computer systems, the distribution and control of data sources, and the human-machine interfaces. To make the creation process of such applications feasible, it is important to have separation of concerns. In this paper we demonstrate how this is achieved within the Task Oriented Software Development process and illustrate the approach by means of a case study.
Task Oriented Programming [24, 29] (TOP) is a paradigm that is designed to construct multiuser , distributed, web-applications. The iTask system [28] (iTasks) is a TOP framework that offers three core concepts for software developers. • Tasks which are abstractions of the work that needs to be performed by (teams of) human(s) and software components. A task is a value of parameterized type (Task a). The type parameter a models the task value the task is currently processing. This value can be inspected by other tasks. • Shared data sources (SDS) which are abstractions of information that is shared between tasks. A SDS is a value of parameterized type (ReadWriteShared r w). The type parameters r and w model the read and write values. • Combinator functions that compose tasks and SDSs into more complex tasks and SDSs and combinations of them.
This paper documents our experience using declarative languages to give secondary school students a first taste of Computer Science. The course aims to teach students a bit about programming in Prolog, but also exposes them to important Computer Science concepts, such as unification or searching strategies. Using Haskell's Snap Framework in combination with our own NanoProlog library, we have developed a web application to teach this course
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.