> From: Dan Bron
>
> No. Let's go back to fundamentals:
>
> A tacit expression can take arguments, but doesn't mention them.
>
> So +`- isn't tacit. Which makes sense: we intuit that something
> about nouns excludes them from being tacit. Which is why my
> second attempt at a definition, using the parse table, almost works.
>
> The special thing about nouns, that prevents them from being tacit, is
> that they can't take arguments. Nouns are the lowest level
> of the part-of-speech hierarchy. Nouns can take no arguments, verbs
> can take nouns as arguments, operators can take nouns or
> verbs as arguments, and nothing can take operators as arguments.
>
Yes I was also thinking of nouns as being important in the definition. In
addition to the above, something along the lines of:
A tacit expression does not produce a noun if assigned to a name
So while the expression + is tacit, 3+5 isn't but 3+5: is.
This sentence contains tacit expressions defining the functions sum, mean and
integers. But the sentence is not a tacit expression because its result is a
noun.
+/ (+/ % #) i. 4 5
Does the definition also need to include something about being able to preserve
its features if it is enclosed in parentheses or assigned to a name? In the
sentence above I could assign everything before the 4 to a name. That name
could take arguments, doesn't mention them and isn't a noun, but it wouldn't
preserve its features.
The following tacit expression would.
([: +/ (+/ % #))@i.
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm