Skip to content
Free planNo credit card requiredStart writing

article · 2008

Tasks: Language Support for Event-driven Programming ABSTRACT

Jeffrey Fischer, Rupak Majumdar, Todd Millstein

Cited by 0Abstract and details only

Abstract

The event-driven programming style is pervasive as an efficient method for interacting with the environment. Unfortunately, the event-driven style severely complicates program maintenance and understanding, as it requires each logical flow of control to be fragmented across multiple independent callbacks. We propose tasks as a new programming model for organizing event-driven programs. Tasks are a variant of cooperative multi-threading and allow each logical control flow to be modularized in the traditional manner, including usage of standard control mechanisms like procedures and exceptions. At the same time, by using method annotations, task-based programs can be automatically and modularly translated into efficient event-based code, using a form of continuation passing style (CPS) translation. A linkable scheduler architecture permits tasks to be used in many different contexts. We have instantiated our model as a backward-compatible extension to Java, called TaskJava. We illustrate the benefits of our language through a formalization in an extension to Featherweight Java, and through a case study based on an open-source web server. 1.

Cite this paper

APA 7

Fischer, J., Majumdar, R., & Millstein, T. (2008). Tasks: Language Support for Event-driven Programming ABSTRACT.

MLA 9

Fischer, Jeffrey, et al. “Tasks: Language Support for Event-driven Programming ABSTRACT.” 2008.

Chicago

Fischer, Jeffrey, Rupak Majumdar, and Todd Millstein. 2008. “Tasks: Language Support for Event-driven Programming ABSTRACT.”

Harvard

Fischer, J., Majumdar, R. and Millstein, T. (2008) ‘Tasks: Language Support for Event-driven Programming ABSTRACT’.

BibTeX
@article{fischer2008tasks,
  title = {{Tasks: Language Support for Event-driven Programming ABSTRACT}},
  author = {Fischer, Jeffrey and Majumdar, Rupak and Millstein, Todd},
  year = {2008}
}

Made from the index record. Check names, capitalisation and page numbers against the paper. Need another style? AI for Research has over 10,000.