I've been replicating some Cat-like functions in a little Mac OS X program
written in Swift. Currently, I have the rudiments of pockets working.
I have mixed in with pockets some basic elements of Bret Victor's Tangle
. I let you write some math
expressions, pocket them, and observe changes to "dependent" pockets
(50 * cookies) while dragging an "independent" pocket (cookies = 3).
Of course, with the compute resources of a MacBook Pro, it's possible to
improve on the Cat by leaps and bounds. For example, I seem to recall
that sometimes it is necessary to strike CALC to re-evaluate pocketed
expressions on a Cat. That was probably a purposeful accommodation by
IAI for the slow 68k microprocessor. Today, a Mac is fast enough to
recompute a lot of pockets in a blink of an eye, so my app does not wait
for the user to recalculate. I have toyed some with graphing dependent
pocket values during Tangle-like drag-and-drop adjustments. A large,
high-resolution display opens up possibilities.
I have some ideas how to do LEAP without LEAP keys, but I haven't
started, yet. I need to make some sketches of my ideas and see if they
still look plausible on paper, or not.
Just wanted to share in case anybody wonders about prospects for
Cat-like computing environment, today. I think the possibilities today
are greater than ever.
 Swift, BTW, is a nice language to program in, and the Mac's libraries
have helped me bring about a surprisingly functional app in just a
few weeks. However, Apple's IDE, Xcode, is frequently a pain. I was
only acquainted with Jef through reading his books and essays and by
corresponding a little by email, but I feel pretty certain that he would
disapprove of the monolithism and complexity of Xcode!)
Urbana, IL (217) 721-9981