Tangle: a JavaScript library for reactive documents
worrydream.com
worrydream.com
Here is its previous HN discussion: [2]
[1] http://worrydream.com/LadderOfAbstraction/ [2] https://news.ycombinator.com/item?id=3099595
I really enjoyed this http://worrydream.com/#!/ExplorableExplanations
[0] An IDE that supports Clojure and Javascript right now, maybe Python soon? Bit behind on the news: http://www.lighttable.com/
The final paragraphs of Evan Miller's essay address this particular webpage (the Tangle demo) in particular.
However, libraries like Tangle are powerful tools to visualize and understand relationships between 2-3 variables.
This does not remove mathematical understanding from the document, but adds an opportunity for quick verification of an understanding. And according to my vague understanding of learning and neural connection getting quick feedback is key to forming strong connections.
http://www.cs.utexas.edu/users/EWD/transcriptions/EWD09xx/EW...
I think it would be really neat to have an entire mathematical textbook interactive in this fashion.
http://www.wolfram.com/mathematica/customer-stories/developi...
(I like your visualization page – a nice way to explain that part of wavelet compression.)
Thanks!
But a lot has changed since then - has this been superseded by client-side libraries with two-way data binding? e.g. angular or knockout. It would probably be quite trivial to duplicate the functionality in either of those libraries.
We also plan to open source this code in due time. Ignore the mess please.
I'd write the numbers in gray so they don't dominate the image.
This would be great: the student can see the default example, learn the subject and then try to check if he understood it correctly seeing how it behaves changing the parameters!
Currently I have particles,disks and boxes working with gravitation, coulomb and custom-defined forces. I also implemented Runge-Kutta method of integration instead of horribly inaccurate Euler's method. You can manipulate the objects, their parameters and laws even while the simulation is running.
I need to add basic collision detection and things like springs, links, and linear/angular motors and embedding the simulation as a widget before polishing it up and releasing.
Email me in case this sounds interesting and you would like to stay updated.
There's also Elm, which implements a variant of reactive programming known as FRP.
AngularJS for instance looks like more about components and data-binding (makes me remember the old Delphi days) in an attempt to use the browser as an application framework than "interactive documents".
I think the main appeal of something like Tangle is to get the benefits of reactive programming while using only a very lightweight and simple library. It provides a very clean interface to a subset of the functionality.
This project looks great, I hope it takes off.
*it being MooTools and this library
Rediscovering Lisp and Smalltalk interactive environments.
The Smalltalkers do this all the time; I had even Ralph Johnson poo hoo my 2007 live programming talk. But you get the feeling that these people really think nothing new can be invented after the 80s. They say "Smalltalk" already does this! And you say "show me" and then they just shut up.
Second, I mentioned it was a good idea to follow these ideas.
My only point is that they aren't new and many live programming advocates sell them as if they were new.
Sometimes I wish people would learn about computing history.
Presentation from Kalman Reti about Lisp Machines, check the interactivity starting at 00:44:00 and how to introduce mouse sensitive images at 01:00:00
http://www.loper-os.org/?p=932
Xerox presentations about Smalltalk-80
http://www.youtube.com/watch?v=JLPiMl8XUKU
screenshot if anyone is interested.
http://i.imgur.com/FjaDFgi.png
http://i.imgur.com/sGNN3la.png
Bret Victor's work is much, much more impressive, you can change variable values and see results in realtime. In that Mario game example, you can see Mario's trajectory and adjust values to see how physical parameters affect the height and distance Mario can jump, and modify gravity ticking equation to see Mario jump & walking up-side-down.
What I mean is that these ideas were already present in such environments.
The "more-than-REPL" stated by me, means that these environments allowed for an interactive type of work that went further than a simple textual REPL.
Many young HN readers tend to associate REPL to the pure REPL textual version they have access to, while using vi and emacs on their UNIX boxes.