Thanks, Björn, Dan, and Brian. Grid is cool, Dan's first tab is what I needed, I hoped to avoid
using the code for table. /Kip
Dan Bron wrote:
Kip Murray wrote:
write an adverb tab so that
-tab~ i.4
-|0 1 2 3
-+----------
0|0 _1 _2 _3
1|1 0 _1 _2
2|2 1 0 _1
3|3 2 1 0
Well, if you already have myst then it's easy:
tab =: 1 : 'myst@:(u table)'
if you're asking for a tacit version, then
tab =: table (myst@:)
If you're asking for full implementations, then:
tab =: 1 : ' (< 2 # << 0 _1 ) { ":@:(u table)'
or, tacitly:
tab =: table (((< 2 # << 0 _1 ) { ":)@:)
-Dan
PS: I did note that your results had leading and trailing empty lines. I
presume this is because your myst replaces the undesirable formatting
with spaces, rather than removing it altogether, as my implementations do.
If you want that behavior, you can use (' ' (<a:;0 _1)} ' ' 0 _1} in
place of (< 2 # << 0 _1 ) { in my implementations.
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm