
Boomerang: A bidirectional programming language for ad-hoc data - unignorant
http://www.seas.upenn.edu/~harmony/
======
Vivtek
This is cool stuff, developed by the same group that first did Unison (a
synching utility that I have grown addicted to).

The basic point is being able to define maps between data structures and then
being able to update either end of the map and see the results transformed on
the other - which is what Unison does at the filesystem/machine level; this is
the same concept taken to the data structure level. It's hard stuff to get
right, but it is _so tantalizing_.

------
itsnotvalid
Is it actively developed? The latest version is from 2009... I wonder if it
have a version of 0.2, is it too far away from the last release?

It would be interesting to grasp what use it proves.

------
teyc
If I recall correctly, early versions of JavaFX attempts this as well in its
data binding, allowing bidirectional binding even in functions.

------
mvanveen
Has anyone actually used this language? The Overview sounds interesting, but
doesn't deliver any specific code examples...

~~~
logjam
There are several examples in the manual:

<http://www.seas.upenn.edu/~harmony/manual.pdf>

~~~
hgfkh
A lot of the code samples there are split at page breaks, making them
difficult to read. Are they provided anywhere as plain text files?

~~~
jnfoster
The distribution includes the full source code for all of the examples in the
manual.

Also, David Lutterkort at RedHat has developed an extension of Boomerang
[<http://augeas.net>] that folks may find interesting...

