example.com/path/to/article
000 points · username · 0 hours ago
example.com0 points · 0 comments · 7 years ago · DonHopkins
SimCity, Cellular Automata, and Happy Tool for HyperLook (nee HyperNeWS (nee GoodNeWS))
HyperLook was like HyperCard for NeWS, with PostScript graphics and scripting plus networking. Here are three unique and wacky examples that plug together to show what HyperNeWS was all about, and where we could go in the future!
https://medium.com/@donhopkins/hyperlook-nee-hypernews-nee-g...
Some highlights:
The Three Axis of AJAX, Which NeWS Also Has To Grind!!!
NeWS was architecturally similar to what is now called AJAX, except that NeWS coherently:
…(drum roll)…
1) Used PostScript CODE instead of JavaScript for PROGRAMMING.
2) Used PostScript GRAPHICS instead of DHTML and CSS for RENDERING.
3) Used PostScript DATA instead of XML and JSON for DATA REPRESENTATION.
The Axis of Eval: Code, Graphics and Data
We will return to these three important dimensions of Code, Graphics and Data as a recurring theme throughout this article. But which way to go from here?
Alan Kay on NeWS:
“I thought NeWS was ‘the right way to go’ (except it missed the live system underneath). It was also very early in commercial personal computing to be able to do a UI using Postscript, so it was impressive that the implementation worked at all.” -Alan Kay
What’s the Big Deal About HyperCard?
"I thought HyperCard was quite brilliant in the end-user problems it solved. (It would have been wonderfully better with a deep dynamic language underneath, but I think part of the success of the design is that they didn’t have all the degrees of freedom to worry about, and were just able to concentrate on their end-user’s direct needs."
"HyperCard is an especially good example of a system that was “finished and smoothed and documented” beautifully. It deserved to be successful. And Apple blew it by not making the design framework the basis of a web browser (as old Parc hands advised in the early 90s …)" -Alan Kay
triska
leoh
https://groups.google.com/forum/#!original/comp.windows.news...
I hope that an example can illustrate this point: In Volume 4 of The Art of Computer Programming, Donald Knuth explains how we can find kernels with maximum weight in C_{100}, the cycle graph with 100 nodes. In that example, the weight he assigns to each node is the Thue-Morse code, i.e., (-1)^ν, where ν is the number of occurrences of 1 in the binary encoding of the node number. So for example, the weight of node 2 is -1, and the weight of node 3 is 1.
We can easily determine the Thue-Morse weight of an integer in PostScript:
Example: 8 weight ⇒ -1Now, how might we compactly lay out the cycle graph with 100 nodes? Using PostScript lets us easily play with different layouts. For example, let us use r, u, l and d to move right, up, left and down, respectively:
We can see what the described path looks like by interpreting this mini-language: Now, we only have to draw the nodes themselves on top of this path. First, let us define which nodes are actually part of a kernel with maximum weight, found with the methods outlined by Knuth (operations on reduced and ordered Binary Decision Diagrams): And now we can simply draw the nodes by interpreting the instructions again, and indicating whether a node is part of the kernel, and whether its weight is positive: In this case, I am using circles for nodes with positive weight.