Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
421658 | Electronic Notes in Theoretical Computer Science | 2010 | 16 Pages |
Abstract
The zipper is a well known design pattern for providing a cursor-like interface to a data structure. However, the classic treatise by Huet only scratches the surface of some of its potential applications. In this paper we take inspiration from Huet, and describe a library suitable as an underpinning for structured editors. We consider a zipper structure that is suitable for traversing heterogeneous data types, encoding routes to other places in the tree (for bookmark or quick-jump functionality), expressing lexically bound information using contexts, and traversals for rendering a program indicating where the cursor is currently focused.
Related Topics
Physical Sciences and Engineering
Computer Science
Computational Theory and Mathematics