Boomerang (programming language)

From Wikipedia, the free encyclopedia
DeveloperNate Foster, Benjamin C. Pierce, and Michael Greenberg88
First appeared2008; 15 years ago (2008)
Stable release
0.2 / September 2, 2009; 13 years ago (2009-09-02)
OSLinux, Mac OS X
Influenced by

Boomerang is a programming language for writing lenses—well-behaved bidirectional transformations —that operate on ad-hoc, textual data formats.

Boomerang grew out of the Harmony generic data synchronizer, which grew out of the Unison file synchronization project.


  • Aaron Bohannon, J. Nathan Foster, Benjamin C. Pierce, Alexandre Pilkiewicz, and Alan Schmitt. Boomerang: Resourceful Lenses for String Data. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), San Francisco, California, January 2008. full text
  • J. Nathan Foster, Alexandre Pilkiewcz, and Benjamin C. Pierce. Quotient Lenses. To appear in ACM SIGPLAN International Conference on Functional Programming (ICFP), Victoria, British Columbia, September, 2008. full text alternately host

External links[edit]