# ASCII triangle in J

I've been doing code golf puzzles to improve my J. I'd appreciate any feedback on my solution to this problem.

The task is to take an integer and produce an ascii triangle as follows:

5

|\
| \
|  \
|   \
|    \
------


My solution:

(#&'| \' @ (1,1,~])"0 i.) , ('-'#~>:)

• I think your answer fails for n=0. It should produce no output, but yours produces '-' Your code golf submission has a clever version that miles put in the comments. *,&'-' '|',.'\'{."0~_1-i. and it passes for n=0 – bob Jul 23 '17 at 8:38

Based on the approach miles took on your code golf submission:

*,&'-' '|',.'\'{."0~_1-i


I shortened it slightly to this:

*,&'-' '|',.' \'{~=@i.


Both of the above pass n=0