I can confirm that. And the definition is a bit obscure, also.

   Determinant
DotProduct
   DotProduct
[: :+/ .*
   Determinant i.3 3
144
   1 2 3 DotProduct 4 5 6
32
   DotProduct
[: :+/ .*

I think that DotProduct was intended to be [: :(+/ .*) which would
have thrown an error when used as Determinant. And, to be consistent,
I think Determinant should have been -/ .* :[:

But, given the coding style, the quick fix that I would be tempted to
implement would be to just add those two definitions at the bottom...

(As an aside, note that for these particular constructs, : needs a
parenthesis around its right argument but not around its left
argument, unless that left argument was something like a verb train.)

Anyways, until it gets adequately tested and fixed, I would advise
avoiding that particular script.

Thanks,

-- 
Raul




On Sat, Nov 25, 2017 at 3:07 PM, Andrew Dabrowski <[email protected]> wrote:
> Thanks for those links.
>
> There seems to be a slight bug in Aliases.ijs - Determinant returns the
> permanent rather than the determinant.
>
>
>
> On 11/19/2017 09:52 PM, Arthur Anger wrote:
>>
>> Andrew--
>> Yes, there are readable names that you may use for J's primitive
>> graphic-character definitions.  Some are defined in the scripts
>> automatically loaded at startup.
>>
>> Names for the character primitives can be had by loading:
>>    http://code.jsoftware.com/wiki/File:Primitiv.ijs .
>> Translations between these names and characters are discussed in:
>>    http://code.jsoftware.com/wiki/Primitives_to_Mnemonics
>> This script also allows for defining mnemonics which are Unicode
>> characters in the spirit of APL.
>>
>> My extension of the above definition process is at:
>>    http://code.jsoftware.com/wiki/File:Aliases.ijs
>> For describing many of the operations, this version offers some
>> abbreviations and alternate names;  you may add others.  This script alters
>> the former "primitives" script to enforce the relevant monadic or dyadic
>> interpretation of different verbs which employ the same ambivalent graphic
>> symbol;  they yield syntax or domain errors rather than unexpected values
>> when used with the wrong number of arguments.
>>
>> As for tacit definitions, I don't see them as being "the heart" of J, but
>> I do use them frequently.  A related tricky aspect is the use of Fork and
>> Hook for routing arguments to their destinations;  I tend to wish that
>> visible symbols had been provided to denote their use.
>>
>> Welcome to the J-world.  One writer claims that it can give you immediate
>> results--and a lifetime of exploration.
>> --Art Anger
>> ---------
>> Date: Sun, 19 Nov 2017 14:15:32 -0500
>> From: Andrew Dabrowski <[email protected]>
>> ...
>> 6. In the age of unicode, why /not/ use the special symbols from APL?
>> We could use the J expressions to type them, but wouldn't the APL
>> symbols look and read better?  As it is J might be said to have the
>> worst of both worlds.
>>
>> 7. Has anyone made up a set of aliases for beginners which provides
>> natural language based names for the operations?  A newbie could slowly
>> add the abbreviations to his vocabulary, as one does with e.g. emacs.
>>
>> 8. The failure to clearly distinguish at the syntactic level between
>> monadic and dyadic verbs, along with the laconic culture, makes tacit
>> definitions almost unreadable for a beginner.  This could have been
>> avoided, but it seems the drive to score an eagle won out over the
>> desire for clarity.
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
>
>
> ----------------------------------------------------------------------
> 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