On 5 February 2012 06:28, Marshall Lochbaum <mwlochb...@gmail.com> wrote:
> I've written a paper which describes a way to replicate and extend J's
> behavior with arrays and forks as part of a single framework. I thought
> this would be interesting to the J community since it elaborates on the
> kind of thinking that drives J's powerful approach to function application.

May I share some comments?

3.3: What is called ‘fork’ is not a fork in the J sense.

3.3: What is called commutativity in the last paragraph is in fact
     associativity.  Moreover, I find the whole explanation in this
     last paragraph incorrect.

3.5: I am not sure I understand what it says.

4: ‘The idea of mapping when a function needs to map, rather than
   when a user tells it to map, makes the mapping much more flexible
   and powerful.’
If you are saying that implicit (as opposed to explicit) mapping is
‘much more flexible and powerful’, then I disagree.
First, in J, it is the combination of rank and implicitness – and not
the latter alone – that ensures flexibility.  Without controllable
verb ranks, implicit mapping is of little use.  (Strange that you do
not discuss ranks, of nouns or verbs, at all.)
Second, explicit mapping has its own ways of bringing in flexibility
and power: when map is a function, it can be properly typed (and type
checked), composed, passed to other functions, partially applied, etc.
Overall, it is hard to choose implicit or explicit as ‘the better’
mapping – they are just different.

One form of ‘almost implicit’ mapping is Haskell's ‘deriving’
descriptor that one can attach to a type (you do mention Haskell
but omit this relevant and very useful bit): once given, it
ensures implicit lifting (mapping) of functions to the level of
the said type; but one has the choice to use it or not.

6: Matrix-vector multiplication on p.7 does not work the way you
are presenting it.

7: This is really so much non-Haskell that it is probably not worth
   including it at all.
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to