Statefulness = "Processness"...?

Chris Pressey <>
Thu Mar 13 15:12:46 CET 2003

On Thu, 13 Mar 2003 06:27:22 +0100
"Vlad Dumitrescu" <> wrote:

> Chris wrote:
> > The thing is, you can't do it this way with a textbox, essentially
> > because the textbox is shared.  Maybe you could do it this way
> > with a single textbox in a modal dialog box with one owner which is
> > patiently waiting for it to close and which isn't sharing it with
> > anything else.
> >
> > But not in the general case.  Definately not, if we're considering
> > 'liveness' as an important property (some other node might want the
> > textbox contents to change, etc.)
> Hi,
> Liveness is important, but I don't think it is good design to pop up a
> dialog for the user to enter data and let the content change
> "automagically" because of some background activity. It is unexpected
> and confusing, not to think about what happens if the user is mid-way
> through entering a name and it is suddenly replaced by something else.

That's quite germane of course - I hate it when I'm typing something into
one window and another window pops up and half of my keystrokes go into it

On the other hand, if the data on the screen represents real live data
then of course it should change on the screen right when it changes in
the application -

It's a bit strange that liveness is one of the things that started this
GUI thread, but it's also the thing that has got the least treatment. :)

> So liveness shouldn't affect fields where the user is expected to enter
> data.

I think there is a less restrictive way: when the user is entering data
into a control, i.e. when that control has the focus, *lock* the control
just as you would lock a record in a database or a file in a filesystem.

(Barely related aside: I added ce_locker to Jungerl a couple of days ago
because I wanted a nice generic design pattern for locking, like Mnesia
does but for arbitrary resources.  Like almost everything in ce it's nice
and clean because it's academically (pathologically?) simple - but it
could serve as a starting point.)

> regards,
> Vlad


More information about the erlang-questions mailing list