Looking at your notes.  Things are a little different in J8.07.

You give as examples the sentences

   (;:'foo bar')  ,each  <'extraboxhere'
   (;:'foo bar')  ,L:0  'noextraboxhere'

which produce the same result.

Before J8.07, these sentences did exactly the same thing.  L:0 added the boxing to (y) and called the loop for each.  L:0 is a smidgen slower on large arguments because it calculates the level of each argument for every cell.

In J8.07, the loop for (each) uses the new result-assembly code, which could have benefits if the result of this sentence were being used as input to (;) or to any f@>, but has no special effect in this case.

The loop for L:0 goes through the same code as in pre-8.07, except that the boxing of y is avoided.


General rule: if the result of u&.> is passed to another verb though @ or &, prefer &.> to L:0 .

Henry Rich



On 7/27/2018 10:21 PM, [email protected] wrote:
HHR> I think negative level is wrongly defined.

Just a few weeks ago, i dug down into L./L:/S:/{:: level counting
myself, incl. negative levels specs.  (Raul's wonderful "convert/json"
add-on made me do it.  I blogged a few notes in
https://www.gaertner.de/~neitzel/nb/archives/2018/06/16/martin_groks_the_l_level_at/index.html
)

I'm interested in reading your proposed changes but it will
take me at least a week to get to it.  More likely two weeks.

                                                        Martin
----------------------------------------------------------------------
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

Reply via email to