Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- Work in ProgressMay 2024
Towards Lenses for Reviewing Playfulness in HCI
CHI EA '24: Extended Abstracts of the CHI Conference on Human Factors in Computing SystemsArticle No.: 333, Pages 1–8https://doi.org/10.1145/3613905.3650888From playful design methods to artifacts that facilitate experiences of play, playfulness has been widely explored in HCI. However, this heterogeneous field of research lacks common ground – from a methodological, theoretical, as well as design ...
Generic deriving of generic traversals
Proceedings of the ACM on Programming Languages (PACMPL), Volume 2, Issue ICFPArticle No.: 85, Pages 1–30https://doi.org/10.1145/3236780Functional programmers have an established tradition of using traversals as a design pattern to work with recursive data structures. The technique is so prolific that a whole host of libraries have been designed to help in the task of automatically ...
Incremental relational lenses
Proceedings of the ACM on Programming Languages (PACMPL), Volume 2, Issue ICFPArticle No.: 74, Pages 1–30https://doi.org/10.1145/3236769Lenses are a popular approach to bidirectional transformations, a generalisation of the view update problem in databases, in which we wish to make changes to source tables to effect a desired change on a view. However, perhaps surprisingly, lenses have ...
- columnDecember 2015
POPL 2005: Combinators for Bi-Directional Tree Transformations: Linguistic Approach to the View Update Problem
ACM SIGPLAN Notices (SIGPLAN), Volume 50, Issue 8SPages 49–62https://doi.org/10.1145/2854695.2854700We propose a novel approach to the well-known view update problem for the case of tree-structured data: a domainspecific\ programming language in which all expressions denote bi-directional transformations on trees. In one direction, these ...
- research-articleOctober 2014
Parametric lenses: change notification for bidirectional lenses
IFL '14: Proceedings of the 26nd 2014 International Symposium on Implementation and Application of Functional LanguagesArticle No.: 9, Pages 1–11https://doi.org/10.1145/2746325.2746333Most complex applications inevitably need to maintain dependencies between subsystems based on some shared data. The dependent parts must be informed that the shared information is changed. As every actual notification has some communication cost, and ...
-
- research-articleAugust 2014
True sums of products
WGP '14: Proceedings of the 10th ACM SIGPLAN workshop on Generic programmingPages 83–94https://doi.org/10.1145/2633628.2633634We introduce the sum-of-products (SOP) view for datatype-generic programming (in Haskell). While many of the libraries that are commonly in use today represent datatypes as arbitrary combinations of binary sums and products, SOP reflects the structure ...
- research-articleApril 2014
Effects of display size and navigation type on a classification task
CHI '14: Proceedings of the SIGCHI Conference on Human Factors in Computing SystemsPages 4147–4156https://doi.org/10.1145/2556288.2557020The advent of ultra-high resolution wall-size displays and their use for complex tasks require a more systematic analysis and deeper understanding of their advantages and drawbacks compared with desktop monitors. While previous work has mostly addressed ...
- research-articleJanuary 2014
Monadic combinators for "Putback" style bidirectional programming
PEPM '14: Proceedings of the ACM SIGPLAN 2014 Workshop on Partial Evaluation and Program ManipulationPages 39–50https://doi.org/10.1145/2543728.2543737Bidirectional transformations, in particular lenses, are programs with a forward get transformation and a backward putback transformation that keep source and view data types synchronized. Several bidirectional programming languages exist to aid ...
- research-articleOctober 2013
Drilling into complex 3D models with gimlenses
VRST '13: Proceedings of the 19th ACM Symposium on Virtual Reality Software and TechnologyPages 223–230https://doi.org/10.1145/2503713.2503714Complex 3D virtual scenes such as CAD models of airplanes and representations of the human body are notoriously hard to visualize. Those models are made of many parts, pieces and layers of varying size, that partially occlude or even fully surround one ...
- research-articleOctober 2012
JellyLens: content-aware adaptive lenses
UIST '12: Proceedings of the 25th annual ACM symposium on User interface software and technologyPages 261–270https://doi.org/10.1145/2380116.2380150Focus+context lens-based techniques smoothly integrate two levels of detail using spatial distortion to connect the magnified region and the context. Distortion guarantees visual continuity, but causes problems of interpretation and focus targeting, ...
- research-articleSeptember 2010
Matching lenses: alignment and view update
ICFP '10: Proceedings of the 15th ACM SIGPLAN international conference on Functional programmingPages 193–204https://doi.org/10.1145/1863543.1863572Bidirectional programming languages are a practical approach to the view update problem. Programs in these languages, called lenses, define both a view and an update policy - i.e., every program can be read as a function mapping sources to views as well ...
Also Published in:
ACM SIGPLAN Notices: Volume 45 Issue 9 - short-paperSeptember 2010
Addressing mobile information overload in the universal inbox through lenses
- Timothy Sohn,
- Vidya Setlur,
- Koichi Mori,
- Joseph 'Jofish' Kaye,
- Horishi Horii,
- Agathe Battestini,
- Rafael Ballagas,
- Christopher Paretti,
- Mirjana Spasojevic
MobileHCI '10: Proceedings of the 12th international conference on Human computer interaction with mobile devices and servicesPages 361–364https://doi.org/10.1145/1851600.1851666Increasingly, smartphones are being used to access all manner of information: email messages, Facebook status updates, tweets, RSS feeds, photographs and more. Approaches to dealing with this multi-faceted information stream developed on the desktop, ...
- ArticleJune 2010
Generic point-free lenses
MPC'10: Proceedings of the 10th international conference on Mathematics of program constructionPages 331–352Lenses are one the most popular approaches to define bidirectional transformations between data models. A bidirectional transformation with view-update, denoted a lens, encompasses the definition of a forward transformation projecting concrete models ...
- research-articleApril 2010
High-precision magnification lenses
CHI '10: Proceedings of the SIGCHI Conference on Human Factors in Computing SystemsPages 273–282https://doi.org/10.1145/1753326.1753366Focus+context interfaces provide in-place magnification of a region of the display, smoothly integrating the focus of attention into its surroundings. Two representations of the data exist simultaneously at two different scales, providing an alternative ...
- ArticleJuly 2009
Updatable Security Views
CSF '09: Proceedings of the 2009 22nd IEEE Computer Security Foundations SymposiumPages 60–74https://doi.org/10.1109/CSF.2009.25Security views are a flexible and effective mechanism for controlling access to confidential information.Rather than allowing untrusted users to access source data directly, they are instead provided with are restricted view, from which all confidential ...
- research-articleSeptember 2008
Quotient lenses
ICFP '08: Proceedings of the 13th ACM SIGPLAN international conference on Functional programmingPages 383–396https://doi.org/10.1145/1411204.1411257There are now a number of BIDIRECTIONAL PROGRAMMING LANGUAGES, where every program can be read both as a forward transformation mapping one data structure to another and as a reverse transformation mapping an edited output back to a correspondingly ...
Also Published in:
ACM SIGPLAN Notices: Volume 43 Issue 9 - research-articleJanuary 2008
Boomerang: resourceful lenses for string data
POPL '08: Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languagesPages 407–419https://doi.org/10.1145/1328438.1328487A lens is a bidirectional program. When read from left toright, it denotes an ordinary function that maps inputs to outputs. When read from right to left, it denotes an ''update translator'' that takes an input together with an updated output and ...
Also Published in:
ACM SIGPLAN Notices: Volume 43 Issue 1 - articleMay 2007
Combinators for bidirectional tree transformations: A linguistic approach to the view-update problem
ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 29, Issue 3Pages 17–eshttps://doi.org/10.1145/1232420.1232424We propose a novel approach to the view-update problem for tree-structured data: a domain-specific programming language in which all expressions denote bidirectional transformations on trees. In one direction, these transformations---dubbed lenses---map ...
- ArticleApril 2007
Pointing lenses: facilitating stylus input through visual-and motor-space magnification
CHI '07: Proceedings of the SIGCHI Conference on Human Factors in Computing SystemsPages 757–766https://doi.org/10.1145/1240624.1240741Using a stylus on a tablet computer to acquire small targets can be challenging. In this paper we present pointing lenses -- interaction techniques that help users acquire and select targets by presenting them with an enlarged visual and interaction ...
- ArticleJune 2006
Relational lenses: a language for updatable views
PODS '06: Proceedings of the twenty-fifth ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systemsPages 338–347https://doi.org/10.1145/1142351.1142399We propose a novel approach to the classical view update problem. The view update problem arises from the fact that modifications to a database view may not correspond uniquely to modifications on the underlying database; we need a means of determining ...