[Jprogramming] J strengths?
Dabrowski, Andrew John
dabrowsa at indiana.edu
Thu Nov 30 03:46:00 UTC 2017
Yes, after reading my own description of my fascination with tacit I thought I sounded like a prick, so I'm trying to use explicit more, and it is nice: still concise, but easier to parse.
One thing that irks me is the J solutions posted on Rosetta Code. Here's the one for Pythagorean triples.
trips=:3 :0
'm n'=. |:(#~ 1 = 2 | +/"1)(#~ >/"1) ,/ ,"0/~ }. i. <. %: y
prim=. (#~ 1 = 2 +./@{. |:) (#~ y >: +/"1)m (-&*: ,. +:@* ,. +&*:) n
/:~ ; <@(,.~ # {. 1:)@(*/~ 1 + y i.@<.@% +/)"1 prim
)
Impressive, but isn't Rosetta Code a place more for showing off how elegant your language can be, rather than how incomprehensible?
On 11/28/2017 11:45 PM, Rob Hodgkinson wrote:
Further on this comment Andrew, don’t get bogged down in the topic of tacit, you can get a lot of benefit form using J in native or explicit form and leave tacit for later.
I have been programming in array languages for many years and also confess to being mesmerised by some of the tacit expressions which I do not find immediately readable at all, especially when peppered with ASCII like punctuation.
Dissect certainly helps, but coding tacit for tacit’s sake is not something I get hung up about, you can derive huge benefit without it, but it can be nice to use when it becomes more familiar to you, as people show here when they create a group of small compact verb trains (or phrases) which together make a compact solution.
Rob Hodgkinson
On 29 Nov 2017, at 8:38 am, Andrew Dabrowski <dabrowsa at indiana.edu><mailto:dabrowsa at indiana.edu> wrote:
As a beginner I find it impossible to parse a moderately sized tacit expression. No doubt one gets better at this, but like all computer languages, the one dimensional space it lives in seems to confound any attempts to represent mathematical ideas directly.
A computer language based on mathematical notation sounds like a cool but impractical idea. It would to have to be 2 dimensional, as in fact math notation is.
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
More information about the Programming
mailing list