If that means using an f. variant which doesn't fix names which have an 
explicit inverse, then that makes sense to me. It still means that f&.g won't 
pick up subsequent changes to g but I can easily live with that.

The other thing to watch for is $: , but I think the interpreter already has 
some voodoo magic it uses when fixing names which reference it.

/K

> On Oct 1, 2019, at 2:06 PM, Henry Rich <[email protected]> wrote:
> 
> I don't remember making the change, but I guess I must have. The reason would 
> have been that names are generally not invertible & so fixing them would 
> improve things.
> 
> I am thinking now that I should apply a modified f. that stops when it 
> encounters :. .  That would fix your problem and still create inverses where 
> possible.  Opinions, anyone?
> 
> Henry Rich
> 
> 
>> On 10/1/2019 3:56 PM, Kirk Iverson wrote:
>> The change appears to have happened between 8.04 and 8.07:
>> 
>> j804/j64/windows: (base copath is ;:'z')
>>   chk=. sdcheck_jsocket_ :. sdcheck_jsocket_
>>   ]&.chk 10060
>> |ETIMEDOUT: sdcheck_jsocket_
>> |       ]&.chk 10060
>> 
>> j807/j64/windows: (base copath is ;:'z')
>>   chk=: sdcheck_jsocket_ :. sdcheck_jsocket_
>>   ]&.chk 10060
>> |value error: sderror
>> |       ]&.chk 10060
>> 
>> I don't know what cases you are thinking about where the implicit f. is 
>> useful -- would an explicit f. by the caller of &. not solve it? In fact, 
>> looking at the 8.07 release notes it appears to suggest using an explicit f. 
>> to remove names and calculate the inverse immediately.
>> 
>> In my case, I often use constructs like the following and this change really 
>> messes it up:
>>    json_z_=: enc_pjson_ :. dec_pjson_
>>    jsoni_z_=: json_z_^:_1
>>    sort&.jsoni '{one:1,two:2,three:3}'
>> {
>> "one":1,
>> "three":3,
>> "two":2
>> }
>> 
>> /K
>> 
>> 
>>> Date: Tue, 1 Oct 2019 04:27:41 -0400
>>> From: Henry Rich <[email protected]>
>>> To: [email protected]
>>> Subject: Re: [Jbeta] system error
>>> Message-ID: <[email protected]>
>>> Content-Type: text/plain; charset=utf-8; format=flowed
>>> 
>>> I will think about this.  Applying f. to v allows some inverses to be
>>> calculated that would not otherwise be possible.  I have some ideas for
>>> a fix, but I won't put them in till I have thought it over.
>>> 
>>> hhr
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
> 
> 
> ---
> This email has been checked for viruses by AVG.
> https://www.avg.com
> 
> ----------------------------------------------------------------------
> 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