Directing JavaScript with Arrows. Yit Phang Khoo, Michael Hicks, Jeffrey S. Foster, and Vibha Sazawal. In Proceedings of the ACM SIGPLAN Dynamic Languages Symposium (DLS), pages 49-58, October 2009.

JavaScript programmers make extensive use of event-driven programming to help build responsive web applications. However, standard approaches to sequencing events are messy, and often lead to code that is difficult to understand and maintain. We have found that arrows, a generalization of monads, are an elegant solution to this problem. Arrows allow us to easily write asynchronous programs in small, modular units of code, and flexibly compose them in many different ways, while nicely abstracting the details of asynchronous program composition. In this paper, we present Arrowlets, a new JavaScript library that offers arrows to the everyday JavaScript programmer. We show how to use Arrowlets to construct a variety of state machines, including state machines that branch and loop. We also demonstrate how Arrowlets separate computation from composition with examples such as a drag-and-drop handler and a bubblesort animation.

[ .pdf ]

@INPROCEEDINGS{khoo09arrowlets,
  AUTHOR = {Yit Phang Khoo and Michael Hicks and Jeffrey S. Foster and Vibha Sazawal},
  TITLE = {Directing {JavaScript} with Arrows},
  BOOKTITLE = {Proceedings of the {ACM} {SIGPLAN} Dynamic Languages Symposium (DLS)},
  PAGES = {49--58},
  MONTH = OCT,
  YEAR = 2009
}

This file has been generated by bibtex2html 1.69