I’m away from home, with only a mobile router, so I attempted the downloads at 
our son’s house.  TalkTalk, my service provider, won’t let me send email from 
my laptop using his router,  so perhaps it’s stopping the validation,  but only 
after using up a GB or two of his service!  Virus-checker (etc) Avast didn’t 
seem to be involved;  it was happy with the downloaded files.

I’ll try again next week.

Thanks,

Mike

Sent from my iPad

> On 26 Jan 2022, at 21:33, Eric Iverson <eric.b.iver...@gmail.com> wrote:
> 
> I did not have any problem installing on win10. It seems win11 is
> tightening the rules. You will need to take some extra step to override the
> security check.
> 
> On Wed, Jan 26, 2022 at 3:35 PM 'Mike Day' via Programming <
> programm...@jsoftware.com> wrote:
> 
>> Just about downloading ArrayFire for Windows 11...
>> 
>> I tried downloading the two exe files, one for W11,  which failed,  and
>> then W10,  also a failure. The failures both reported inability to verify.
>> 
>> My son has just commented that it’s a common M/S feature...  Anyone else
>> seen this behaviour?
>> 
>> Thanks
>> 
>> Mike
>> 
>> Sent from my iPad
>> 
>>> On 26 Jan 2022, at 19:45, 'Pascal Jasmin' via Programming <
>> programm...@jsoftware.com> wrote:
>>> 
>>> The signature for af_add:
>>> 
>>> af_add (af_array *out, const af_array lhs, const af_array rhs, const
>> bool batch)
>>> 
>>> with lhs and rhs as parameter names, I don't think J users would get
>> lost if they called the "cover function" dyadically the same way they call +
>>> 
>>> I'm not suggesting altering any existing code that does follow the "C
>> spec" closely.  Just adding adverbs on top of them to provide an intuitive
>> J interface to the functions.
>>> 
>>> consider the J function
>>> 
>>> insert =: 1 : 'u/"x y' (_&$: :)
>>> 
>>> it is "monadic only" version of /.  With optional rank parameter as
>> dyadic number
>>> 
>>>  + insert i.3 3
>>> 
>>> 9 12 15
>>> 
>>> 1 + insert i.3 3
>>> 
>>> 3 12 21
>>> 
>>> J does not need such an adverb ("x is easy to type/add and "name context
>> free"), but "lesser languages" do.  Although when they do use such an
>> implementation, they capture the full flexibility of ranked-modified
>> insert.  A more important flexibility than being able to turn insert into,
>> a very different adverb, table.
>>> 
>>> this insert adverb definition would work like a lesser language
>> modifier....
>>> 
>>> like af_sum, af_product group.
>>> 
>>> One of the reasons to make this consistency change is to simplify
>> conversion to and from J<->arrayfire including the great matmul
>> demonstration you have provided.
>>> 
>>> 
>>> 
>>> 
>>> 
>>> On Wednesday, January 26, 2022, 12:23:52 p.m. EST, Eric Iverson <
>> eric.b.iver...@gmail.com> wrote:
>>> 
>>> 
>>> 
>>> 
>>> 
>>> Pascal,
>>> 
>>> Interesting ideas on arrayfire args.
>>> 
>>> I will probably resist the idea of making dop verbs dyadic. I think it
>>> better to stick closer to the arrayfire syntax.
>>> 
>>> But it makes sense to avoid unnecessary boxing.
>>> 
>>>  af_add_jaf_ afad;afbd NB. works
>>>  af_add_jaf_ afad,afbd NB. fails, but probably should work
>>> 
>>> 
>>> 
>>> On Wed, Jan 26, 2022 at 10:03 AM 'Pascal Jasmin' via Programming <
>>> programm...@jsoftware.com> wrote:
>>> 
>>>> An interface suggestion would be to transform all verbs that currently
>>>> take 2 boxed arguments into unboxed dyad arguments.
>>>> 
>>>> this can be done by adding the adverb (@:;) for the dop class verbs.
>> and
>>>> (@:;~) for the reduce class verbs such that the operating axis is the x
>>>> term.  The reduce class could have the additional adverb (0&$: : ) to
>> make
>>>> supplying the axis an optional parameter.  The explicitly constructed
>>>> functions in arrayfire.ijs that take 2 boxed y parameters (matmul) can
>> also
>>>> be decorated with (@: ;)
>>>> 
>>>> These changes would more naturally leverage J's processing/modifier
>>>> capabilities, and processing list of arrayfire array handles.  Arrayfire
>>>> sparse support seems to be limited to rank 2 arrays.  J could circumvent
>>>> these limitations by shaping multiple arrayfire handles managing the
>>>> nesting logic in J instead.
>>>> 
>>>> There are many uses of arrayfire that are made easier with a list of
>> array
>>>> handles.
>>>> 
>>>> 
>>>> 
>>>> 
>>>> On Tuesday, January 25, 2022, 04:39:36 p.m. EST, Eric Iverson <
>>>> eric.b.iver...@gmail.com> wrote:
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> Pascal,
>>>> 
>>>> Thanks for the feedback. Coming from you, it means a lot to me.
>>>> 
>>>> There are some rough edges for windows and mac (I work mostly in linux)
>>>> that I will fix tomorrow morning.
>>>> 
>>>> On Tue, Jan 25, 2022 at 3:52 PM 'Pascal Jasmin' via Programming <
>>>> programm...@jsoftware.com> wrote:
>>>> 
>>>>> looks good.  A small bug:
>>>>> 
>>>>> if you define
>>>>> 
>>>>> reduce_z_ =: ]: NB. adverb
>>>>> 
>>>>> prior to loading arrayfire.ijs
>>>>> 
>>>>> load will fail.
>>>>> 
>>>>> The reason is the families.ijs file creates a bunch of forks with their
>>>>> middle verbs defined after the forks are created.
>>>>> 
>>>>> An easy fix is to define all of the explicit verbs used in families.ijs
>>>>> above the line that "require families.ijs"
>>>>> 
>>>>> 
>>>>> fixed it for me.
>>>>> 
>>>>> 
>>>>> 
>>>>> On Tuesday, January 25, 2022, 10:56:54 a.m. EST, Eric Iverson <
>>>>> eric.b.iver...@gmail.com> wrote:
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> ~addons/math/arrayfire is a new addon for J903 and later.
>>>>> 
>>>>> The addon allows high performance computing of matrix product
>>>>> and many other mathematical array operations. Multiple cpu
>>>>> cores and hardware such as Nvidia gpus are used as appropriate.
>>>>> 
>>>>> Browse https://arrayfire.org for more info.
>>>>> 
>>>>> The addon will prompt you for the ArrayFire software install if
>>>>> it is not already installed.
>>>>> 
>>>>> Use pacman to install the addon. For example,
>>>>>  load'pacman'
>>>>>  'install' jpkg 'math/arrayfire'
>>>>> 
>>>>> Get started:
>>>>>  load '~addons/math/arrayfire/arrayfire.ijs'
>>>>>  man_jaf_ 'intro'
>>>>> ...
>>>>>  init_jaf_ 'cpu'
>>>>>  tut_jaf_ 'basic' NB. run basic tutorial
>>>>> ...
>>>>>  man_jaf_ 'credits' NB. credit to some J-ArrayFire pioneers
>>>>> ...
>>>>> 
>>>>> *** preliminary version
>>>>> We think this is an important step for J in high performance computing.
>>>>> If this proves to be the case, Jsoftware will actively pursue further
>>>>> development in this area.
>>>>> 
>>>>> *** from the addon description
>>>>> cd bindings and utilities for ArrayFire shared library
>>>>> 
>>>>> https://arrayfire.org
>>>>> 
>>>>> "ArrayFire is a high performance software library for
>>>>> parallel computing with an easy-to-use API. Its array based
>>>>> function set makes parallel programming more accessible."
>>>>> 
>>>>> J-ArrayFire cd bindings make it easy to have
>>>>> high performance computing for things like matrix multiply
>>>>> with cpu cores, Nvidia gpus, and opencl.
>>>>> ***
>>>>> ----------------------------------------------------------------------
>>>>> 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
>>>> ----------------------------------------------------------------------
>>>> 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
>> ----------------------------------------------------------------------
>> 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