Date: Mon, 27 Mar 2017 21:36:13 -0700
From: Bret Victor
Subject: Re: Logic Circuit Jam
Also wanted to mention -- one of the most exciting parts of the jam for me was watching all the demos and thinking "people could do it any of these ways, and they would all work".  With a sufficiently good set of pre-built recognizers and sufficiently good ways of defining rules, someone could come in and build a working logic circuit kit in Toby-style or Paula-style or Josh-style or Bret-style.  They're all different, and they're all fine.

When designing a typical programming system, there's often a feeling of a strong "grain" -- there's some "right" way of writing a program that feels most natural in the language, and you're designing the language to try to maximize the elegance/parsimoniousness of a program written the "right" way.  At the jam today, I enjoyed the feeling that our system wouldn't be strongly grained at all.  The real world has so many degrees of freedom, there are so many ways of doing anything in the real world.  Realtalk should be useful however anyone wants to use it, instead of imposing its own style on anyone.

(fwiw, it's true that I used to worship Larry Wall, but that was a long time ago and I'm embarrassed by that.) 

(fwiw also, Python has never sat well with me.)

Of course, there's the question of interoperability -- if I put my logic gates on a table with Toby's gates, can they play together?  Could they be made to play together?

(At least they can sit on the same table together, which is already better than logic gates from two different computer applications.)