Tim,

Thanks for all of the details from your time at the tour, it sound really
great. I'm happy to see that CALL FORM and CALL WORKER are being promoted,
that's great. I strongly encourage everyone to try these features out. If
you can find 30-60 minutes when you've got the feeling to experiment, you
can master the basic mechanics. Several months later, I'm still sorting
through nuances ;-) The documentation on the basic commands is excellent,
although I find the overall 'about workers' page possibly more misleading
than clarifying.

Seriously folks, jump in! Make a silly new database with one form and a few
methods - that's all it takes to figure out the basics. After enough people
are using these tools and familiar with their standard behaviors, we can
start to exchange some better ideas about how best to use them.

As a quick heads-up, I think that the most accurate names for these
commands are respectively:

EXECUTE METHOD IN WINDOW
EXECUTE METHOD IN WORKER

They not sending messages in any traditional sense, they moving code into a
different context where it's executed. They're more like an unusual control
structure or a remote procedure call than to a message. Although you can
build a more traditional messaging system on top of these commands. By
"traditional messaging", I mean computer-to-computer messaging, not
person-to-person. (I've been into message-oriented, networked systems
architectures for a long time - like many on this list.)

So, yeah, dive in, try them out and have some fun. They're pretty neat. And
there are some very nice advantages to using workers.

Oh, and just as another couple of technical heads up:

     Any 4D code can *send* using the new commands, but only a window or a
worker can *receive.*

     These are pure calls - there is no concept of a return,
     but you can add a callback if you're coming from a window or worker.

     The concept of the queue is of limited usefulness because we can't see
it,
      control it, or change it in any sort of fine-grained way.

I'm glad that Tim pointed out that these commands work in 32-bit and don't
require compilation to execute. I think that these commands may have come
out of 4D's work on making more of the language pre-emptive. That's
understandably lead to some conflation of the two subjects. Pre-emptive
mode and these new CALL commands can be treated as unrelated subjects. So
if you don't care about pre-emptive, you should still find out about these
commands - they're a vast improvement over past options.
**********************************************************************
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**********************************************************************

Reply via email to