Les wrote:
Les, have you played with MathMorphs? Mark
Yes- in my system, I'm doing something along those lines, but rather than expose the raw methods I expose an object's services. Unary messages are easy, but services requiring additional arguments require a bit more support. In my scheme you would request a service, which would present itself within the user interface, and then you would interact with that service by either specifying or dragging arguments into the presentation of the service. When it is ready, the service can be activated to obtain its result.
Les. The package that Mark is talking about exposes object's services too. You can drag arguments and then select a service (i.e., a message). We call them MorphicWrappers. We use MW to teach and work in Squeak in general and more intensively in the MathMorphs project.
What is nice with MW is the way you use them to create new objects: all you need is start typing 'on the air' (i.e. on the World) any Squeak expression that makes sense. Immediately a floating Balloon appears. You edit your expression inside the Balloon. Hitting enter the expression gets evaluated and PLOP!! the resulting object suddenly appears shaking attached to your hand.
By placing the hand on an object the Squeak expressions you write interpret self as the focused object. The MorphicWrappers also provide programming capabilities as you have noticed. If you use MWs, you don't need workspaces nor browsers. This eliminates many of the windows we are used to work on.
Moreover, in order to minimize typing, MW doesn't use menus. Instead of menus MW uses a history of typed expressions. Different histories are remembered for different situations so you can easily find the expression you are looking for and use it 'as is' or edit it to suit your new needs. Histories are better than menus because they are dynamic and may be effortless modified.
We really love the MorphicWrappers and would appreciate very much any contributions to enhance them.
/Leandro (for the MW fans club)
PD: The current version of MW works nice with 2.3. We are currently working to provide the 2.4 version.
squeak-dev@lists.squeakfoundation.org