Declarative, composable views

Widespread use of HTML [W3Cb], JavaScript, and the DOM [W3Ca] has led to sub-optimal ‘best practices’. We apply the bidirectional programming formalism of lenses [FGM05] to define user interfaces in JavaScript that are declarative, composable, clear, and concise — in half the code. Additionally, we define two new bidirectional combinator over lists, order and list map.