The event handlers for buttons and other things in a form are explicit. As
are interval timer event handlers. Look at the source for Help/QT
Demos/Form Styles. Notice all the handlers for events at the bottom are
explicit definitions. Almost every form has a handler to close the form.
Form Styles has:

stylesdemo_close_button=: 3 : 0
smoutput 'stylesdemo_close_button called'
wd 'pclose'
)

The trick is to determine when a definition completes. A statement contents
execute when it has all its arguments. In the case of tacit statements it
has all its arguments so it executes. The result is a definition of a verb
or modifier. That's all it does is define. So anything it refers to in
making the definition is fixed.

Explicit definitions also execute when found, but the resulting definition
requires variable arguments. So that is supplied each time it is used.

This is most noticeable with user adverbs and conjunctions. At least, those
that are explicit. The result of these modifiers may produce explicit verbs
or tacit verbs. But if x or y is in the definition of the modifier the
definition is performed each time it is used. Even though the resultant
verb is tacit.

The key to think about is that a definition executes as it is encountered
in a script or wherever. Be it tacit or explicit. But it only executes the
contents of the definition when it is given all its arguments. To me the
distinction between explicit and tacit definitions is a little fuzzy. You
can have tacit expressions within a line of explicit code. And you can have
explicit definitions in tacit code.

On Mon, Nov 27, 2017 at 11:08 AM, Daniel Lyons <[email protected]>
wrote:

>
> > On Nov 27, 2017, at 11:07 AM, Don Guinn <[email protected]> wrote:
> >
> > The wd callbacks are all explicit.
>
>
> Can you elaborate on this? I’m not sure what you mean.
>
> --
> Daniel Lyons
>
>
>
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to