Benjamin Pierce et al did some work on bidirectional computation. The
premise is to work with bidirectional transformations (which they call
"lenses") rather than (unidirectional) functions. They took a stab at
identifying some primitives, and showing how they would work in some
applications. Of course we can do all the composition tricks with
lenses that we can do with functions :)
http://www.seas.upenn.edu/~harmony/


See also Gerald Sussman's essay Building Robust Systems,
http://groups.csail.mit.edu/mac/users/gjs/6.945/readings/robust-systems.pdf

In particular, he has a section called "Constraints Generalize
Procedures". He gives an example of a system as a constraint solver
(two-way information flow) contrasted with the system as a procedure
(one-way flow).


Also I submitted a paper for Onward 2012 which discusses this topic
among other things,
http://totem.cc/onward2012/onward.pdf

My own interest is in programming interfaces for artists. I am
interested in these "causally agnostic" programming ideas because I
think they could support a more non-linear, improvisational approach
to programming.


Toby


2012/4/24 Jarek Rzeszótko <jrzeszo...@gmail.com>:
> On the other hand, Those who cannot remember the past are condemned to
> repeat it.
>
> Also, please excuse me (especially Julian Leviston) for maybe sounding too
> pessimistic and too offensive, the idea surely is exciting, my point is just
> that it excited me and probably many other persons before Bret Victor or
> Chris Granger did (very interesting) demos of it and what would _really_
> excite me now is any glimpse of any idea whatsoever on how to make such
> things work in a general enough domain. Maybe they have or will have such
> idea, that would be cool, but until that time I think it's not unreasonable
> to restrain a bit, especially those ideas are relatively easy to realize in
> special domains and very hard to generalize to the wide scope of software
> people create.
>
> I would actually also love to hear from someone more knowledgeable about
> interesting historic attempts at doing such things, e.g. reversible
> computations, because there certainly were some: for one I remember a few
> years ago "back in time debugging" was quite a fashionable topic of talks
> (just google the phrase for a sampling), from a more hardware/physical
> standpoint there is http://en.wikipedia.org/wiki/Reversible_computing etc.
>
> Cheers,
> Jarosław Rzeszótko
>
>
> 2012/4/24 David Nolen <dnolen.li...@gmail.com>
>>
>> "The best way to predict the future is to invent it"
>>
>> On Tue, Apr 24, 2012 at 3:50 AM, Jarek Rzeszótko <jrzeszo...@gmail.com>
>> wrote:
>>>
>>> You make it sound a bit like this was a working solution already, while
>>> it seems to be a prototype at best, they are collecting funding right now:
>>> http://www.kickstarter.com/projects/306316578/light-table.
>>>
>>> I would love to be proven wrong, but I think given the state of the
>>> project, many people overexcite over it: some of the things proposed aren't
>>> new, just wrapped into a nice modern design (you could try to create a new
>>> "skin" or UI toolkit for some Smalltalk IDE for a similiar effect), while
>>> for the ones that would be new like the real-time evaluation or
>>> visualisation there is too little detail to say whether they are onto
>>> something or not - I am sure many people thought of such things in the past,
>>> but it is highly questionable to what extent those are actually doable,
>>> especially in an existing language like Clojure or JavaScript. I am not
>>> convinced if dropping 200,000$ at the thing will help with coming up with a
>>> solution if there is no decent set of ideas to begin with. I would
>>> personally be much more enthusiastic if the people behind the project at
>>> least outlined possible approaches they might take, before trying to collect
>>> money. Currently it sounds like they just plan to "hack" it until it handles
>>> a reasonable number of special cases, but tools that work only some of the
>>> time are favoured by few. I think we need good theoretical approaches to
>>> problems like this before we can make any progress in how the actual real
>>> tools work like.
>>>
>>> Cheers,
>>> Jarosław Rzeszótko
>>>
>>>
>>> 2012/4/24 Julian Leviston <jul...@leviston.net>
>>>>
>>>> Thought this is worth a look as a next step after Brett Victor's work
>>>> (http://vimeo.com/36579366) on UI for programmers...
>>>>
>>>> http://www.kickstarter.com/projects/ibdknox/light-table
>>>>
>>>> We're still not quite "there" yet IMHO, but that's getting towards the
>>>> general direction... tie that in with a tile-script like language, and I
>>>> think we might have something really useful.
>>>>
>>>> Julian
>>>> _______________________________________________
>>>> fonc mailing list
>>>> fonc@vpri.org
>>>> http://vpri.org/mailman/listinfo/fonc
>>>
>>>
>>>
>>> _______________________________________________
>>> fonc mailing list
>>> fonc@vpri.org
>>> http://vpri.org/mailman/listinfo/fonc
>>>
>>
>>
>> _______________________________________________
>> fonc mailing list
>> fonc@vpri.org
>> http://vpri.org/mailman/listinfo/fonc
>>
>
>
> _______________________________________________
> fonc mailing list
> fonc@vpri.org
> http://vpri.org/mailman/listinfo/fonc
>
_______________________________________________
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc

Reply via email to