Explicit entities are created by the (:) conjunction. Anything else is
tacit.
The distinction is notional. We all have little bits of tacit code in
our J lines:
maxindex =: (i. >./) array
the (i. >./) is a tiny tacit verb. If you gave it a name it would
become a named tacit verb.
Sometimes the distinction seems pedantic:
qverb =: 3 : 0"0
...
)
Is qverb tacit or explicit?
Answer: tacit. It is not created by (:). It is created by (").
Henry Rich
On 1/20/2017 9:39 PM, William Szuch wrote:
Trying to understand when an explicit verb is used in a tacit form.
For example if I define v1 which is in a tacit form - does not have
reference to arguments but contains the explicit verb rplc.
v1 =: [: ". rplc&(LF;' ')
In this case what should v1 be called - an explicit of tacit ?.
v2 =: v1 f.
If I now use f. to replace rplc in v1 then v2 is an explicit.
The advantage of using f. is that if rplc has no public names then v2 has no
public names.
This can be useful is removing public names in a verb.
Any comments to help with my understanding of tacits.
Regards
Bill Szuch
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm