I think the tenor of this debate misses an important point.  'Tacit' is 
not a simple yes-or-no.

Take an example.  Suppose I have a filespec (like 'C:\xxx\*.txt') and I 
want a list of filenames in order of modification date, but not 
including directories.

A beginner might write

files =. 1!:0 filespec
attrs =. 4 {"1 files
notdir =. 'd' ~: 4 {"1 > attrs
pfiles =. notdir # files
names =. 0 {"1 pfiles
times =. 1 {"1 pfiles
namesinorder =. names /: times

With more experience, they would see some opportunities for using tacit 
features:

pfiles =. (#~   'd' ~: (4;4)&{::"1) files
namesinorder =. (0&{"1 /: 1&{"1) pfiles

As J feels more natural, they might write

namesinorder =. (0&{"1 /: 1&{"1)  (#~   'd' ~: (4;4)&{::"1) 1!:0 filespec

(with appropriate comments, of course).  Somewhere along the line this 
would fail on an empty directory and they would add a test for that:

namesinorder =. (0&{"1 /: 1&{"1)  (#~   'd' ~: (4;4)&{::"1)^:(*...@#) 1!:0 
filespec


If parts of that are useful enough to get their own names, they would:
culling =: 1 : 'u#]'
fisdir =: 'd' = (4;4)&({::)"1
ifany =: ^:(*...@#@])

and the solution would be written

namesinorder =. (0&{"1 /: 1&{"1) -...@fisdir culling ifany 1!:0 filespec


Is it tacit?  Is it explicit?

Henry Rich


On 11/21/2010 2:10 PM, Dan Bron wrote:
> Ian wrote:
>>   If reading tacit expressions posed no significant problems
>>   to anyone except dunces, then surely there would have been
>>   no need for this work and it would not have been done?
>>
>>   So doesn't this put Bj�rn's assertion beyond debate?
>
> If reading Icelandic posed no significant problems to anyone except dunces, 
> then surely there would be no need for this work:
>
>       http://members.multimania.co.uk/mareka/iceland/icelandic.html
>
> and it would not have been done? Don't pages like that put my assertion 
> beyond debate?
>
> It just takes practice, guys.
>
> -Dan
>
>
>
> ----------------------------------------------------------------------
> 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