actually _running_ something

R James Noble kjx at
Fri Apr 5 23:20:30 UTC 1991

Hmm, yes, I suppose I did forget the "how to" instructions :-(

Danny's previous message is correct listing what you need to do to get
this running. To recap:
You will need to check sc.self (and possibly others)
that they don't clobber anything. sc.self uses a slot called "hook" so
you could just change that. Most of the rest uses seperate namespaces
added to globals so they should be right out of the way of anything.
I thing a ringBuffer slot is added to collections traits & prototypes.

Also, you will need to change x-misc.self to include your x hosts, and
sc.self to refer to them rather than willis. (I couldn't find an easy
way to do the name lookup).

Finally, the Self interface to X doesn't do any X authentication.
So if you are running, magic cookie or kerberos you will need to turn
them off - xhost + is the magic, but it will stop security for all of X.

Basically, running "demo" will create a few windows, display them and
return to the prompt.  I haven't got an evaluator (I'll probably wait
till Danny updates his for 1.2, then grab it!) so I need the prompt.
The problem is that while at the prompt Self can't do anything, in
particular in response to X (expose) events.  However any X window or
display object (such as "foo") understands the messages
waitProcessEvent and processEvent (wpe and pe for short), handle
X events for all X objects on that display.

Therefore doing "foo pe" should display something.  To actually see
something running, try sending some messages to "baz" which is a
encapsulated trafficLight object, for example "baz amber" or "baz
cycle". Hopefully this will cause the trafficLight to run and the
displays will be updated.  Failing that, xpect: someobject should
display a simple inspector window on an object; (currently this will
not keep up to date with changes to the object).

However, for the time being you will need to do "foo pe" messages to
handle any X events that may arrive.  The traffic light object is in
e-traffic.self, the encapsulator object (message forwarder) in
e-encap.self. X objects are x-* and tarraing stuff (viewers, mainly)
in t-*.self

Hope this is some use


More information about the Self-interest mailing list