# System/ReleaseNotes/J806

< System | ReleaseNotes

**J806 release 12 November 2017**

## Contents

### Changes to the base system

#### The JE is updated to J8.06

#### New features:

`u@n`(where`n`is a noun) is now allowed, and executes`u`on the value of`n`, ignoring any arguments (equivalent to`u@(n"_)`)

`u :: n`(where`n`is a noun) is now allowed, and gives the result`n`if`u`fails (equivalent to`u :: (n"_)`)

`[x] 128!:6 y`- see latest Dictionary for documentation on support for Secure Hash Algorithms

`u d. _1`now knows how to integrate more cases of m&^ and ^&n, with some bugs fixed (contribution from Jon Hough)

#### Performance improvements (timings taken on 64-bit Windows):

- (
`x -: y`) coded to be a bit faster for boxed arrays

- (
`x -:!.0 y`) coded significantly faster on floating/complex arrays by avoiding code to replace -0 with +0

- (
`x +/ . * y`) coded using block tiling with BLAS micro kernels which take advantage of SIMD instructions (if supported by the user's CPU).

- (
`x +/ . * y`) executes on multi-cores (if OpenMP is available) to perform parallel calculations.

- The
`i.`-family has been recoded to use improved algorithms and AVX/NEON instructions

- During
`x {:: y`, any selection in which`x`is a numeric atom and`y`is a list of boxes is handled by special code

- Arrays with a large number of boxes are greatly improved. Assigning such an array to a name no longer requires visiting every leaf.

`x m} y`and`x , y`operate in-place if possible when`x`and`y`are boxed (they have long been in-place for non-boxed types)

- The no-change cases
`0 }. y`,`1 # y`, and`0 |. y`execute instantly

- Nested dyadic ranks, for example
`x u"0 0"1 _ y`or`x u"0/ y`, are handled with a single looping structure rather than a nested one that required copying the data twice

- Monadic and dyadic ranks run a bit faster after a rewrite primarily intended as a bug fix

`u"n`, when`u`returns a boxed result, is a bit faster by saving one copying of the boxing

### Changes to the Qt IDE

The Qt IDE version is 1.6.2, and is built with Qt 5.6 on Windows and OSX, and with Qt 5.3 on Linux.

Changes:

- add svgview control using QSvgRenderer, see Help|Studio|Qt Demos|svg

- add browser control using QTextBrowser, see Help|Studio|Qt Demos|browser

- add websocket and opengl support to the slim build

- user QTextEdit control for Term. This replaces QPlainTextEdit, and enables html output to Term, e.g.

` A=: '<html><span style="color:red;font-style:italic">hello there</span></html>'`

` wd 'sm html *',A`

hello there