[Q] Anyone tried ThingLab in SqueakSource?

Matthew Fulmer tapplek at gmail.com
Sun Apr 15 23:00:03 UTC 2007


On Mon, Apr 16, 2007 at 07:15:35AM +0900, Sungjin Chun wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Matthew Fulmer wrote:
> 
> > I am responsible for the ThingLab in SqueakSource. What Squeak
> > Image are you using? I have only tested ThingLab with Squeak 3.8
> > images.
> 
> I'm using MVC only image which derived from 3.8.1 image.
> 
> > 
> > I have no idea what you mean by assign.frame: and assign.form:
> > messages. can you elaborate?
> 
> The problem is that my image has problem with compiling assign.frame:
> like method, there seems that supporting facilities from you changeset
> posted in wiki but from my quick debugging session, it cannot get
> fields(arguments) of given selector. (Sorry for my poor english). For
> example, during compiling of "assign.point: (Point x: 1 y: 2)" the
> compiling logic can find the selector name correctly ("assign.point:")
> but cannot find its field(argument, Point instance).

selectors should not have periods in their name. is assign an
object name, and point: a method? if so, perhaps you are trying
to do:

    assign point: 1 at 2

or is assign.point: the name of a message you made up? I have no
idea what assign.point: is, or what it has to do with ThingLab.
Indeed, it is not even valid Smalltalk syntax. 

You may also be trying to write an accessor method, one that
sets the 'point' instance variable of your object. if so, rename
it to simply point: and it should work

ThingLab does use selectors with periods in their names behind
the scenes, but none of those are built in the browser; it only
uses those for auto-generated intermediate methods used in the
incremental constraint solver. It is quite an egregious
violation of Smalltalk syntax, so don't expect any tool support.
A serious update of ThingLab would require
selectors-with-periods to be removed.

> > Also, I have not examined it yet, but Cassowary may be a better
> > ThingLab. The only way I know of to install it is through
> > Universes in the 3.10 alpha image, but it may work in older
> > images too.
> > 
> 
> Does it work well with MVC only image? And is it improved version of
> ThingLab or so? I tried ThingLab for demonstration of Smalltalk-80.

It is a completely different system, written simultaneously for
C, Java, Python, and Smalltalk:
http://www.cs.washington.edu/research/constraints/cassowary/
It was ported to Squeak later. I don't know whether it is for
MVC, Morphic, or non-graphic, as I have never yet tried it.

-- 
Matthew Fulmer -- http://mtfulmer.wordpress.com/
Help improve Squeak Documentation: http://wiki.squeak.org/squeak/808



More information about the Squeak-dev mailing list