Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
hyperlook [2007-07-17 10:45] – created nikhyperlook [2020-07-17 09:49] (current) nik
Line 5: Line 5:
 ---- ----
  
-http://mailman.laptop.org/pipermail/sugar/2006-December/001022.html+via;: http://mailman.laptop.org/pipermail/sugar/2006-December/001022.html
  
   * Date: Thu Dec 28 10:58:09 EST 2006   * Date: Thu Dec 28 10:58:09 EST 2006
Line 12: Line 12:
   * Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]   * Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
  
-I love the ideas behind Smalltalk, EToys and HyperCard, and would like  +I love the ideas behind Smalltalk, EToys and HyperCard, and would like  
-to combine them with ideas from visual programming languages like Robot  +to combine them with ideas from visual programming languages like Robot  
-Odyssey, KidSim, Klik-and-Play, SimAntics, Body Electric/Bounce,  +Odyssey, KidSim, Klik-and-Play, SimAntics, Body Electric/Bounce,  
-Max/MSP/Jitter, etc.+Max/MSP/Jitter, etc.
  
 Here are some ideas about HyperLook and other systems, that could be  Here are some ideas about HyperLook and other systems, that could be 
Line 23: Line 23:
 for the NeWS window system, which Arthur van Hoff created at the Turing  for the NeWS window system, which Arthur van Hoff created at the Turing 
 Institute in Glasgow. Institute in Glasgow.
 +
 http://www.donhopkins.com/home/catalog/hyperlook/ http://www.donhopkins.com/home/catalog/hyperlook/
  
Line 29: Line 30:
 non-editable runtime, and I used it to port SimCity to Unix, and develop  non-editable runtime, and I used it to port SimCity to Unix, and develop 
 other components and applications . other components and applications .
 +
 http://www.donhopkins.com/home/catalog/hyperlook/ http://www.donhopkins.com/home/catalog/hyperlook/
-http://www.donhopkins.com/home/catalog/hyperlook/HyperLook-SimCity.gif+ 
 +{{http://www.donhopkins.com/home/catalog/hyperlook/HyperLook-SimCity.gif}}
  
 HyperLook was inspired by HyperCard, but it additionally provided a  HyperLook was inspired by HyperCard, but it additionally provided a 
Line 47: Line 50:
 the first to admit the X11/NeWS merge was quite a hodge-podge and  the first to admit the X11/NeWS merge was quite a hodge-podge and 
 huge-kludge!) huge-kludge!)
 +
 NeWS had an object system based on the simple dynamic ideas of  NeWS had an object system based on the simple dynamic ideas of 
 Smalltalk, implemented with the PostScript dictionary stack, supporting  Smalltalk, implemented with the PostScript dictionary stack, supporting 
 multiple inheritance and runtime modification of objects and classes. multiple inheritance and runtime modification of objects and classes.
-http://www.donhopkins.com/home/catalog/hyperlook/HyperLookInfo10.gif+ 
 +{{http://www.donhopkins.com/home/catalog/hyperlook/HyperLookInfo10.gif}}
  
 HyperLook was a gui development framework and desktop environment, that  HyperLook was a gui development framework and desktop environment, that 
Line 60: Line 65:
 manager, gui editor, clipboard and other desktop tools and services, all  manager, gui editor, clipboard and other desktop tools and services, all 
 designed around the PostScript graphics format and message passing system. designed around the PostScript graphics format and message passing system.
-http://www.donhopkins.com/home/catalog/hyperlook/TalkInterfacing.gif + 
-http://www.donhopkins.com/home/catalog/hyperlook/HyperLookInfo2.gif +{{http://www.donhopkins.com/home/catalog/hyperlook/TalkInterfacing.gif}} 
-http://www.donhopkins.com/home/catalog/hyperlook/HyperLookInfo11.gif + 
-http://www.donhopkins.com/home/catalog/hyperlook/HyperLookInfo13.gif+{{http://www.donhopkins.com/home/catalog/hyperlook/HyperLookInfo2.gif}} 
 + 
 +{{http://www.donhopkins.com/home/catalog/hyperlook/HyperLookInfo11.gif}} 
 + 
 +{{http://www.donhopkins.com/home/catalog/hyperlook/HyperLookInfo13.gif}}
  
 Users could create their own integrated applications, task oriented  Users could create their own integrated applications, task oriented 
Line 71: Line 80:
 handlers, sending and receiving messages between other stacks and  handlers, sending and receiving messages between other stacks and 
 applications, and customizing applications to suit their needs. applications, and customizing applications to suit their needs.
-http://www.donhopkins.com/home/catalog/hyperlook/HappyProps.gif+ 
 +{{http://www.donhopkins.com/home/catalog/hyperlook/HappyProps.gif}}
  
 It provided a user-editable window manager, that allowed you to draw and  It provided a user-editable window manager, that allowed you to draw and 
Line 78: Line 88:
 controls, as well as combining and scripting together multiple  controls, as well as combining and scripting together multiple 
 application components and custom graphics. application components and custom graphics.
 +
 Because everything was based on PostScript, you could print any window  Because everything was based on PostScript, you could print any window 
 to a PostScript printer or copy it to the clipboard, and iconified  to a PostScript printer or copy it to the clipboard, and iconified 
 windows were just live miniaturized views. windows were just live miniaturized views.
-http://www.donhopkins.com/home/catalog/hyperlook/Clipboard.gif+ 
 +{{http://www.donhopkins.com/home/catalog/hyperlook/Clipboard.gif}}
  
 Developers could create back-end services (like audio mixing) and  Developers could create back-end services (like audio mixing) and 
Line 87: Line 99:
 shared memory for efficient bitmap animation, and share services like  shared memory for efficient bitmap animation, and share services like 
 audio mixing with other applications. audio mixing with other applications.
-http://www.donhopkins.com/home/catalog/hyperlook/TalkGraph.gif + 
-http://www.donhopkins.com/home/catalog/hyperlook/TalkView.gif+{{http://www.donhopkins.com/home/catalog/hyperlook/TalkGraph.gif}} 
 + 
 +{{http://www.donhopkins.com/home/catalog/hyperlook/TalkView.gif}}
  
 I developed SimCity in parallel with HyperLook, so there was a powerful  I developed SimCity in parallel with HyperLook, so there was a powerful 
 synergy, SimCity drove the development of many of HyperLook's features,  synergy, SimCity drove the development of many of HyperLook's features, 
 and the other way around. and the other way around.
 +
 SimCity extended HyperLook with client/server based components like the  SimCity extended HyperLook with client/server based components like the 
 city editor, map view, graph display, which could be copied and pasted  city editor, map view, graph display, which could be copied and pasted 
 and placed anywhere in the interface. and placed anywhere in the interface.
 +
 It was great to have a demanding application like SimCity as an acid  It was great to have a demanding application like SimCity as an acid 
 test, to shake out bugs and limitations of the platform, and prove the  test, to shake out bugs and limitations of the platform, and prove the 
 abilities of general purpose components like bitmap animation and audio  abilities of general purpose components like bitmap animation and audio 
 mixing. mixing.
-http://www.donhopkins.com/home/catalog/hyperlook/TalkIntro.gif + 
-http://www.donhopkins.com/home/catalog/hyperlook/TalkNewCity.gif+{{http://www.donhopkins.com/home/catalog/hyperlook/TalkIntro.gif}} 
 + 
 +{{http://www.donhopkins.com/home/catalog/hyperlook/TalkNewCity.gif}}
  
 HyperLook was a commercial product, with a WYSIWYG interface development  HyperLook was a commercial product, with a WYSIWYG interface development 
 environment for developers, and a freely redistributable non-editable  environment for developers, and a freely redistributable non-editable 
 runtime. runtime.
 +
 We released it at the same time as SimCity (using SimCity as bait to  We released it at the same time as SimCity (using SimCity as bait to 
 entice people to try out the included HyperLook runtime). entice people to try out the included HyperLook runtime).
 +
 http://www.donhopkins.com/home/catalog/hyperlook/HyperLook.README http://www.donhopkins.com/home/catalog/hyperlook/HyperLook.README
 +
 http://www.donhopkins.com/home/catalog/hyperlook/SimCity.README http://www.donhopkins.com/home/catalog/hyperlook/SimCity.README
  
Line 118: Line 139:
 components around, and edit their scripts (enabling user interface  components around, and edit their scripts (enabling user interface 
 vandalism). vandalism).
 +
 Personally, I think all users should have a user-editable development  Personally, I think all users should have a user-editable development 
 environment, but it's important to be able to lock it down and constrain  environment, but it's important to be able to lock it down and constrain 
 it, so casual user's can't accidentally break the system, or get  it, so casual user's can't accidentally break the system, or get 
 confused with unnecessary details. confused with unnecessary details.
-http://www.donhopkins.com/home/catalog/hyperlook/TalkRunTime.gif+ 
 +{{http://www.donhopkins.com/home/catalog/hyperlook/TalkRunTime.gif}}
  
 HyperLook included a "warehouse" of pre-configured object templates,  HyperLook included a "warehouse" of pre-configured object templates, 
Line 128: Line 151:
 script to create your own HyperLook applications, custom interfaces,  script to create your own HyperLook applications, custom interfaces, 
 interactive presentations, etc. interactive presentations, etc.
-http://www.donhopkins.com/home/catalog/hyperlook/ButtonIdeas5.gif + 
-http://www.donhopkins.com/home/catalog/hyperlook/Warehouse3.gif+{{http://www.donhopkins.com/home/catalog/hyperlook/ButtonIdeas5.gif}} 
 + 
 +{{http://www.donhopkins.com/home/catalog/hyperlook/Warehouse3.gif}}
  
 Like HyperCard, you could copy and paste components around (including  Like HyperCard, you could copy and paste components around (including 
 per-object customizations like scripts, properties and graphics) to  per-object customizations like scripts, properties and graphics) to 
 construct and edit your own interfaces. construct and edit your own interfaces.
 +
 Like HyperCard, you could open up a property sheet or script editor on  Like HyperCard, you could open up a property sheet or script editor on 
-any object.+any object.  
 Unlike HyperCard, the scripts were written in object oriented  Unlike HyperCard, the scripts were written in object oriented 
 PostScript. (Arthur van Hoff also wrote PdB, an object oriented C to  PostScript. (Arthur van Hoff also wrote PdB, an object oriented C to 
 PostScript compiler, and later went on to write the first Java compiler  PostScript compiler, and later went on to write the first Java compiler 
 in Java at Sun!) in Java at Sun!)
 +
 Unlike HyperCard, the property sheets were implemented as HyperLook  Unlike HyperCard, the property sheets were implemented as HyperLook 
 stacks themselves, which made it easy to develop new components or  stacks themselves, which made it easy to develop new components or 
Line 164: Line 192:
 clock editor property sheet, and paste your original creations back into  clock editor property sheet, and paste your original creations back into 
 the warehouse to use again: the warehouse to use again:
-http://www.donhopkins.com/home/catalog/hyperlook/NeatClockProps.gif + 
-http://www.donhopkins.com/home/catalog/hyperlook/NeatClocks.gif+{{http://www.donhopkins.com/home/catalog/hyperlook/NeatClockProps.gif}} 
 + 
 +{{http://www.donhopkins.com/home/catalog/hyperlook/NeatClocks.gif}}
  
 Here's a cellular automata laboratory that uses the shared memory raster  Here's a cellular automata laboratory that uses the shared memory raster 
Line 174: Line 204:
 screen backgrounds, and place a live bubbling cellular automata view  screen backgrounds, and place a live bubbling cellular automata view 
 component clipped into a lava-lamp shaped window!): component clipped into a lava-lamp shaped window!):
-http://www.donhopkins.com/home/catalog/hyperlook/CAM.gif+ 
 +{{http://www.donhopkins.com/home/catalog/hyperlook/CAM.gif}}
  
 The nice thing about having a standard PostScript based structured  The nice thing about having a standard PostScript based structured 
Line 187: Line 218:
 automata,  user interface and graphics editing, and cutting and pasting  automata,  user interface and graphics editing, and cutting and pasting 
 graphics between various HyperLook applications. graphics between various HyperLook applications.
 +
 http://www.donhopkins.com/home/catalog/simcity/hyperlook-demo.html http://www.donhopkins.com/home/catalog/simcity/hyperlook-demo.html
 +
 http://www.donhopkins.com/home/movies/HyperLookDemo.mov http://www.donhopkins.com/home/movies/HyperLookDemo.mov
  
Line 194: Line 227:
 PostScript, but including Encapsulated PostScript or modern equivalents  PostScript, but including Encapsulated PostScript or modern equivalents 
 like PDF, SVG, PNG, etc). like PDF, SVG, PNG, etc).
 +
 It's also essential to have a reusable structured graphics editor  It's also essential to have a reusable structured graphics editor 
 component, and also that all of the property sheets and applications  component, and also that all of the property sheets and applications 
Line 207: Line 241:
 tools for  playing with the live cellular automata pixels through shared  tools for  playing with the live cellular automata pixels through shared 
 memory). memory).
 +
 Something like Photoshop or GIMP would be too complicated and  Something like Photoshop or GIMP would be too complicated and 
 monolithic, unless it could be stripped down and re-packaged as an  monolithic, unless it could be stripped down and re-packaged as an 
 light-weight, easy-to-use, plug-in component. light-weight, easy-to-use, plug-in component.
  
-I've worked on and programmed in some interesting visual programming  +I've worked on and programmed in some interesting visual programming  
-languages like Bounce (aka Body Electric, VPL's VR scripting language),  +languages like Bounce (aka Body Electric, VPL's VR scripting language),  
-SimAntics (The Sims behavior scripting language) and PSIBER (visual  +SimAntics (The Sims behavior scripting language) and PSIBER (visual  
-PostScript and NeWS debugger), and played around with others like  +PostScript and NeWS debugger), and played around with others like  
-Max/MSP/Jitter, ProGraph and KidSim (aka Cocoa, Stagecraft Creator,  +Max/MSP/Jitter, ProGraph and KidSim (aka Cocoa, Stagecraft Creator,  
-which was at once point actually implemented in ProGraph!).+which was at once point actually implemented in ProGraph!).
  
 Visual programming languages are great fun, and can be extremely  Visual programming languages are great fun, and can be extremely 
Line 222: Line 257:
 have more differences than similarities, and extremely weird ways of  have more differences than similarities, and extremely weird ways of 
 looking at the world. looking at the world.
 +
 There is no one best way to design the ultimate visual programming  There is no one best way to design the ultimate visual programming 
 language, but there are many good ideas to be tried (and bad ideas to be  language, but there are many good ideas to be tried (and bad ideas to be 
Line 256: Line 292:
 compile the visual graph notations into (or interpret the visual  compile the visual graph notations into (or interpret the visual 
 languages directly in Python, if practical). languages directly in Python, if practical).
-So kids could easily create a high-level graphical scripts like The  + 
-Learning Company's "Robot Odyssey" or Maxis's "Klik-and-Play", and  +So kids could easily create a high-level graphical scripts like The  
-developers could meticulously create low-level behind-the-scenes scripts  +Learning Company's "Robot Odyssey" or Maxis's "Klik-and-Play", and  
-in visual languages like "Body Electric" and "Max", or text language  +developers could meticulously create low-level behind-the-scenes scripts  
-like Python (or a hybrid of the visual and text languages -- check out  +in visual languages like "Body Electric" and "Max", or text language  
-how PSIBER implements a new visual interface to the existing PostScript  +like Python (or a hybrid of the visual and text languages -- check out  
-language, and how Cycling 74's Max/Jitter integrates JavaScript with the  +how PSIBER implements a new visual interface to the existing PostScript  
-visual programming language: JS code inside icons, JS objects on wires!): +language, and how Cycling 74's Max/Jitter integrates JavaScript with the  
-http://en.wikipedia.org/wiki/Klik_&_Play +>visual programming language: JS code inside icons, JS objects on wires!): 
-http://www.cycling74.com/products/jitter +http://en.wikipedia.org/wiki/Klik_&_Play 
-http://www.cycling74.com/download/JavascriptInMax.pdf+http://www.cycling74.com/products/jitter 
 +http://www.cycling74.com/download/JavascriptInMax.pdf
  
 Just imagine a visually scriptable version of SimCity, that lets you  Just imagine a visually scriptable version of SimCity, that lets you 
Line 353: Line 390:
 Flash 9 (AVM2)! Flash 9 (AVM2)!
  
-http://www.mozilla.org/projects/tamarin/ +  * http://www.mozilla.org/projects/tamarin/ 
-http://developers.slashdot.org/article.pl?sid=06/11/07/1324224 +  http://developers.slashdot.org/article.pl?sid=06/11/07/1324224 
-http://blogs.business2.com/utilitybelt/2006/11/web_20_bombshel.html+  http://blogs.business2.com/utilitybelt/2006/11/web_20_bombshel.html
  
 It turns out that AVM2 does not totally suck. (There are no benchmarks  It turns out that AVM2 does not totally suck. (There are no benchmarks 
Line 399: Line 436:
 NeWS Toolkit at Sun, and various NeWS tools and applications for other  NeWS Toolkit at Sun, and various NeWS tools and applications for other 
 companies. companies.
 +
 http://www.donhopkins.com/drupal/node/92 http://www.donhopkins.com/drupal/node/92
  
 I developed lots of other fun stuff with NeWS, including various  I developed lots of other fun stuff with NeWS, including various 
 implementations of pie menus and tab windows: implementations of pie menus and tab windows:
 +
 http://www.donhopkins.com/drupal/node/92 http://www.donhopkins.com/drupal/node/92
 http://www.piemenu.com/DDJPieMenuArticle.html http://www.piemenu.com/DDJPieMenuArticle.html
Line 410: Line 449:
 entirely in NeWS PostScript, which I helped develop at Sun, and  entirely in NeWS PostScript, which I helped develop at Sun, and 
 integrated with HyperLook, and used to develop pie menus and tab windows. integrated with HyperLook, and used to develop pie menus and tab windows.
 +
 http://www.donhopkins.com/home/catalog/images/tnt.gif http://www.donhopkins.com/home/catalog/images/tnt.gif
  
 Pizza Tool was a graphical Open Look gui for editing and ordering pizzas  Pizza Tool was a graphical Open Look gui for editing and ordering pizzas 
 via FAX, that I wrote as a programming demo for The NeWS Toolkit: via FAX, that I wrote as a programming demo for The NeWS Toolkit:
 +
 http://www.donhopkins.com/home/catalog/images/pizzatool.gif http://www.donhopkins.com/home/catalog/images/pizzatool.gif
  
 The HyperTIES hypermedia browser, with pie menus and "applets" scripted  The HyperTIES hypermedia browser, with pie menus and "applets" scripted 
 in PostScript (for Ben Shneiderman at the UMCP HCIL): in PostScript (for Ben Shneiderman at the UMCP HCIL):
 +
 http://donhopkins.com/drupal/taxonomy/term/61 http://donhopkins.com/drupal/taxonomy/term/61
  
Line 423: Line 465:
 Emacs), with pie menus and multiple tab windows, and an authoring tool  Emacs), with pie menus and multiple tab windows, and an authoring tool 
 for HyperTIES: for HyperTIES:
 +
 http://donhopkins.com/drupal/node/101 http://donhopkins.com/drupal/node/101
  
Line 429: Line 472:
 I worked on HyperLook with Arthur van Hoff at the Turing Institute, and  I worked on HyperLook with Arthur van Hoff at the Turing Institute, and 
 used it for various applications. used it for various applications.
 +
 http://www.donhopkins.com/home/catalog/hyperlook/ http://www.donhopkins.com/home/catalog/hyperlook/
  
Line 434: Line 478:
 I ported SimCity to HyperLook and X11, and designed a multi player  I ported SimCity to HyperLook and X11, and designed a multi player 
 scriptable user interface using TCL/Tk. scriptable user interface using TCL/Tk.
 +
 http://www.donhopkins.com/home/catalog/simcity/index.html http://www.donhopkins.com/home/catalog/simcity/index.html
  
Line 439: Line 484:
 NeWS. NeWS.
 I developed it at the UMCP HCIL and Grasshopper Group. I developed it at the UMCP HCIL and Grasshopper Group.
 +
 http://www.donhopkins.com/drupal/node/97 http://www.donhopkins.com/drupal/node/97
  
Line 450: Line 496:
 extension system, and multimedia support, with David Levitt at Levity  extension system, and multimedia support, with David Levitt at Levity 
 and Interval Research Corporation. and Interval Research Corporation.
 +
 http://www.donhopkins.com/home/catalog/lang/bounce/bounce.html http://www.donhopkins.com/home/catalog/lang/bounce/bounce.html
  
Line 458: Line 505:
 developed its user interface (Edith) and primitives (character  developed its user interface (Edith) and primitives (character 
 animation, etc), with Will Wright at Maxis: animation, etc), with Will Wright at Maxis:
 +
 http://www.donhopkins.com/drupal/taxonomy/term/35 http://www.donhopkins.com/drupal/taxonomy/term/35
  
Line 467: Line 515:
 is free speech, and why all election software should be open source and  is free speech, and why all election software should be open source and 
 publicly inspectable. publicly inspectable.
 +
 http://www.dumbold.com/dumbold http://www.dumbold.com/dumbold
  
Line 480: Line 529:
  
  
 +----
 +[[category animation]]
  
  
  • hyperlook.1184669134.txt.gz
  • Last modified: 2007-07-17 10:45
  • by nik