Help / Release / J 4.05 / Implementation Status

From J Wiki
Jump to navigation Jump to search


>> << Pri JfC LJ Phr Dic Voc !: Rel NuVoc wd Help Release



Implementation Status

initial writing: 1990-08-09
last updated: 2004-10-26


System Limits
Not Yet Available

Release 4.05  2000 09 05
Release 4.04  2000 01 02
Release 4.03  1999 04 21
Release 4.02  1998 11 07
Release 4.01  1998 03 22
Release 3.05  1997 09 27
Release 3.04  1997 05 19
Release 3.03  1996 12 13
Release 3.02  1996 06 24
Release 3.01  1996 01 16
Release 2.06  1995 05 30
Release 2.05  1995 02 26
Release 2.04  1994 11 28
Release 2.03  1994 09 21
Release 2.01  1994 09 01

Version 7.0    1993 11 14
Version 6.2    1992 12 20
Version 6.1    1992 11 26
Version 6.0    1992 10 24
Version 5.1a  1992 08 11
Version 5.1    1992 07 28
Version 5.0    1992 06 22
Version 4.2    1992 03 19
Version 4.1    1992 02 02
Version 4.0    1991 11 23
Version 3.4    1991 07 15
Version 3.3    1991 06 25
Version 3.2    1991 06 02
Version 3.1    1991 05 17
Version 3.0    1991 03 17
Version 2.9    1991 02 15
Version 2.8    1990 11 15
Version 2.7    1990 10 22
Version 2.0    1990 08 09



System Limits

  Comparison tolerance   <: 2^_34

Not Yet Available

  _                  incomplete
  __                 incomplete
  _.                 incomplete
  c.

Changes in Release 4.05, 2000 09 05

  <                  monad faster and less space
  |.                 monad faster and less space
  ;                  faster and less space
  -/ .*              monad faster and less space
  <@}.;.n            faster and less space
  <@}:;.n            faster and less space
  #: i.@(*/)         monad faster and less space
  3!:1               implemented dyad
  3!:2               extended
  3!:3               implemented dyad
  5!:7               implemented
  6!:8               implemented
  6!:9               implemented
  6!:10              implemented
  6!:11              implemented
  6!:12              implemented
  6!:13              implemented
  9!:30              implemented
  9!:31              implemented
  9!:32              implemented
  9!:33              implemented
  13!:0              extended
  f/@,               monad faster and less space
  ,./                monad faster and less space
  u/.!.t             implemented
  /:                 faster
  \:                 faster
  [                  faster and less space
  ]                  faster and less space
  a=: c}x,y,:z       faster and less space
  u"r                faster and less space
  A.                 dyad faster and less space
  i.                 faster dyad
  i:                 faster dyad
  memory mapped boxed arrays
                     implemented

Changes in Release 4.04, 2000 01 02

  $.                 implemented
  /:                 faster
  \:                 faster
  {                  dyad faster and less space
  (<"1@[ { ])        dyad faster and less space
  }                  dyad faster and less space
  C.!.2              implemented

Changes in Release 4.03, 1999 04 21

  ($,)               dyad faster and less space
  ($,)"r             dyad faster and less space
  n}                 dyad faster and less space
  9!:26              implemented
  9!:27              implemented
  9!:28              implemented
  9!:29              implemented

Changes in Release 4.02, 1998 11 07

  -/ .*              monad faster and less space
  #/.                faster dyad
  9!:22              implemented
  9!:23              implemented
  {.                 implemented infinite left arguments for dyad
  i:                 implemented monad

Changes in Release 4.01, 1998 03 22

  u;.3               faster and less space on matrices
  u;._3              faster and less space on matrices
  6!:3               changed to accept fractions (Windows only)
  13!:18             implemented
  18!:0              implemented
  18!:1              implemented
  18!:2              implemented
  18!:3              implemented
  18!:4              implemented
  18!:5              implemented
  18!:55             implemented
  d.                 implemented
  E.                 implemented
  i:                 implemented
  p.                 extended
  # i.@#             faster and less space on boolean lists

Changes in Release 3.05, 1997 09 27

  ;:^:_1             changed
  ^ !.s              extended
  p.!.s              extended
  0!:11              changed to display errors in scripts
  9!:24              implemented
  9!:25              implemented
  17!:n              implemented
  {.                 changed overtake on empties
  ":                 extended to permit complex left arguments
  q:                 implemented (-x) q: y
  1r2                changed

Changes in Release 3.04, 1997 05 19

  '`a b c'=.gerund   implemented
  gerund;.n          implemented
  gerund/.           implemented
  gerund\            implemented
  gerund\.           implemented
  9!:20              implemented
  9!:21              implemented
  13!:17             implemented
  valence error      implemented
  for. do. end.      implemented
  select. case.
    fcase. do. end.  implemented

Changes in Release 3.03, 1996 12 13

  'a b cd'=.y        implemented
  'a b cd'=:y        implemented
  + etc.             ranks of monads changed from _ to 0
  %:                 faster monad
  ^                  faster dyad
  ^.                 faster
  b&#^:_1            implemented
  b&#^:_1!.f         implemented
  |:                 faster
  -/ .*              faster monad
  :                  default result of i.0 0
  5!:6               implemented
  7!:3               implemented
  7!:4               implemented
  9!:18              implemented
  9!:19              implemented
  13!:16             implemented
  16!:x              implemented
  f"r                faster monad
  <.@o.              implemented on extended arguments
  >.@o.              implemented on extended arguments
  p:                 faster
  error text         extended to display current name

Changes in Release 3.02, 1996 06 24

  + +/ +/\ +/\.      faster on integers
  * */ */\ */\.      faster on integers
  - -/ -/\ -/\.      faster on integers
  gerund^:_1         implemented
  !                  implemented for complex arguments
  0!:3               implemented
  4!:5               implemented
  {::                implemented
  @                  implemented special cases
  A.                 monad gives extended result
  i.                 faster dyad
  I.                 implemented
  o.                 domain restricted
  q:                 faster
  S:                 implemented
  x:                 implemented
  1234x              implemented

Changes in Release 3.01, 1996 01 16

  scalar fns         faster
  ^:                 changed; faster and less space
  $"r                faster dyad
  |:                 faster
  , !.f              implemented
  ,.!.f              implemented
  ,:!.f              implemented
  ;                  faster monad
  ;.                 faster and less space
  #                  dyad: faster and less space
  #:                 faster monad
  9!:7               extended to accept matrices
  9!:16              implemented
  9!:17              implemented
  13!:x              extended to tacit defns
  13!:3              extended to 'f* m:d', '*f m:d', and '~f m:d'
  13!:9              implemented
  13!:10             implemented
  13!:11             implemented
  13!:12             implemented
  13!:14             implemented
  13!:15             implemented
  f/                 faster monad on scalar f
  ,.&.>/             faster monad
  /:                 extended to all arrays
  f/\                faster monad on scalar f
  f/\.               faster monad
  \:                 extended to all arrays
  a=.x y}a           faster and less space
  ".                 implemented dyad
  ":                 changed right rank; extended to boxed arrays; faster
  ?.                 implemented
  i.                 faster dyad
  L.                 implemented
  L:                 implemented
  m.                 implemented
  n.                 implemented
  u.                 implemented
  v.                 implemented
  Window driver      changed

Changes in Release 2.06, 1995 05 30

  <"r                faster monad
  +.                 faster monad
  -:                 faster dyad
  -:"r               faster dyad
  a&#.^:_1           changed
  */^:_1             implemented
  p:^:_1             implemented
  q:^:_1             implemented
  ~:                 faster monad
  ~:"r               faster monad
  4 : n              implemented
  13!:8              implemented
  /:                 faster
  /:"r               faster
  \:                 faster
  \:"r               faster
  ]:                 implemented
  f D. 1             extended
  gerund D. n        implemented
  e.                 faster dyad
  e."r               faster dyad
  H.                 implemented
  i.                 faster dyad
  i."r               faster dyad
  p.                 implemented
  p:                 implemented
  q:                 implemented
  f t.               extended
  gerund t.          implemented
  t:                 implemented
  memory allocation  faster
  Window driver and
   session manager   ported to Macintosh

Changes in Release 2.05, 1995 02 26

  f~"r               faster
  |.                 faster dyad
  |."r               faster dyad
  |.!.f              faster dyad
  |.!.f"r            faster dyad
  |:                 faster
  |:"r               faster
  !^:_1              implemented
  n&!^:_1            implemented
  !&n^:_1            implemented
  #"r                faster dyad
  9!:10              implemented
  9!:11              implemented
  9!:12              implemented
  9!:14              implemented
  ~:/                faster monad
  [\                 faster dyad
  f/\                faster monad on booleans
  f/\"r              faster monad
  f/\.               faster monad
  f/\."r             faster monad
  m&g"r              faster
  f&n"r              faster
  a:                 implemented

Changes in Release 2.04, 1994 11 28

  >                  faster monad
  +                  faster dyad
  +/\                faster monad
  +/\.               faster monad
  *                  faster dyad
  */\                faster monad
  */\.               faster monad
  -                  faster
  -/\                faster monad
  -/\.               faster monad
  -:"r               faster dyad
  -:!.f"r            faster dyad
  |                  faster monad
  |."r               faster monad
  ,                  faster
  ,"r                faster
  ,.                 faster dyad
  ,."r               faster monad
  ,:"r               faster
  f;.0               faster monad
  f;.3               faster
  f;._3              faster
  0!:k               accepts string right argument
  3!:1               supports boxed arrays
  3!:2               supports boxed arrays
  3!:3               supports boxed arrays
  3!:4               implemented
  3!:5               implemented
  15!:k              implemented
  f/"r               faster monad
  ["r                faster
  ]"r                faster
  {                  faster on boxed left argument
  {"r                faster dyad
  {."r               faster
  {.!.f"r            faster
  {:"r               faster
  }."r               faster
  }:"r               faster
  p.!.s              implemented
  scripts            preserves blanks on input line
  general execution  faster

Changes in Release 2.03, 1994 09 21

  |:                 faster
  i{y                faster
  u&.>               faster

Changes in Release 2.01, 1994 09 01

  <!.k               removed monad
  >!.k               removed monad
  u^:n               faster for scalar n
  $.                 removed
  u~                 faster
  |.                 changed left rank to 1
  :                  changed numeric encoding
  control words      implemented
  u;.3               implemented
  u;._3              implemented
  0!:xyz             implemented
  0!:2               implemented
  1!:0               implemented
  1!:5               implemented
  1!:6               implemented
  1!:7               implemented
  1!:20              implemented
  1!:21              implemented
  1!:22              implemented
  1!:30              implemented
  1!:31              implemented
  1!:32              implemented
  1!:55              changed to also work on directories
  2!:0               moved from 0!:0
  2!:1               moved from 0!:1
  2!:55              moved from 0!:55
  3!:2               changed to be inverse of 3!:1 and 3!:3
  3!:3               implemented
  4!:3               implemented
  4!:4               implemented
  4!:56              removed
  5!:3               removed
  5!:4               changed to use linear rep. for nouns
  14!:k              implemented
  +/b                faster on boolean vectors
  -/b                faster on boolean vectors
  ;/                 faster monad
  b{y                faster
  m}                 changed
  ".                 removed dyad
  ":                 faster; blanked out control chars in boxed display
  m@.n               implemented
  i.                 faster dyad
  given names        removed
  trains             enhanced
  windows interface  enhanced
  workspaces         removed
  z locale           implemented


Changes in Version 7.0, 1993 11 14

  +.                 bug fix
  ^:                 changed
  [:                 added
  t.                 added
  T.                 added
  :                  changed
  13!:n              added
  locatives          added
  command line       changed
  error display      changed

Changes in Version 6.2, 1992 12 20

  u@n                removed
  D.                 implemented

Changes in Version 6.1, 1992 11 26

  %                  coerced -0 to 0
  u^:g               implemented
  !:                 changed C fn headers for derived fns
  0!:2               fixed bugs in profile, Windows, rank n output
  0!:3               ditto
  0!:4               ditto
  0!:5               ditto
  2!:2               changed to use maximum precision
  2!:3               ditto
  4!:55              fixed bug in local names
  4!:56              ditto
  g}                 implemented
  i.                 added support for non-standard MAC floating point formats
  source jt.h        added fl (flag) field to struct V
  source r.c         changed 5!:2 to exploit fl in V
  source rl.c        changed 5!:5 to exploit fl in V
  source rt.c        changed 5!:5 to exploit fl in V

Changes in Version 6.0, 1992 10 24

  =                  faster monad
  -.                 faster dyad
  ~.                 faster
  ~:                 faster monad
  : 20               implemented
  : 21               implemented
  : 22               implemented
  u ::v              implemented
  u;.n               faster monad
  0!:4               implemented
  0!:5               implemented
  4!:56              implemented
  11!:0              implemented
  11!:1              implemented
  u/.                faster dyad
  /:                 faster
  \:                 faster
  u b.               implemented
  e.                 faster
  i.                 faster
  input              implemented 3r4, 3ad90, 3ar1.5708, 3p4, 3x4, 3b121.12

Changes in Version 5.1a, 1992 08 11

  ":                 fixed bug in ": on real arrays

Changes in Version 5.1, 1992 07 28

  -.                 faster dyad on strings
  m :12              returns adverb if y. not in m
  5!:5               implemented
  9!:2               implemented
  9!:3               implemented
  [:                 implemented
  ]:                 implemented
  u@n                implemented
  m f.               implemented
  x. y.              replaced immediately by referent
  2: to 9:           implemented
  trains             implemented c1 v c2
  J                  added SYS_DOUBLE
  J                  added SYS_GETTOD

Changes in Version 5.0, 1992 06 22

  <!.k               implemented
  <.                 faster
  >                  faster
  >!._               implemented
  >.                 faster
  +                  faster dyad
  *                  faster dyad
  -                  faster
  -:                 faster
  %.                 faster
  ^                  special case in dyad for integer y
  $                  faster dyad
  ~:                 faster dyad
  f/ .g              faster dyad
  +/ .*              faster dyad
  ,                  faster dyad
  ,.                 faster dyad
  #                  faster dyad
  #.                 faster
  #:                 faster; fixed bug (#:!.t)
  f/                 faster
  f/\                faster monad
  f/\.               faster monad
  {.                 faster dyad
  {.!.f              implemented
  }.                 faster
  "                  faster; prefix agreement
  ?                  faster monad
  5!:4               faster
  x 6!:2 y           implemented

Changes in Version 4.2, 1992 03 19

  input              fixed bug in jgets()
  input              numeric input (in w.c) more robust
  vz.c               enhanced portability in zacosh()
  J PC386            available
  test scripts       available

Changes in Version 4.1, 1992 02 02

  u . v              faster
  m&,                invertible
  ,&m                invertible
  m&}.               invertible
  1!:2               (Mac) file type set to TEXT
  1!:3               (Mac) file type set to TEXT
  1!:12              (Mac) file type set to TEXT
  ^!.p               implemented
  J                  source made available

Changes in Version 4.0, 1991 11 23

  _:                 implemented
  +.y                implemented
  *.y                implemented
  x-.y               faster
  u^:_               implemented
  u^:_1              linear approximation
  u^:n               dyad changed
  u^:v               changed
  $:                 changed
  |:                 faster on matrices
  u .. v             implemented
  u .: v             implemented
  m : 11             string m only
  m : 12             implemented
  atom1,:atom2       produces 2 1$atom1,atom2
  u/.                dyad faster
  0{atom             returns atom
  u}                 changed; old defn is u@i.@}.@$} : (u@i.@$})
  u"_                implemented
  `:1                replaced by u^:v
  `:4                replaced by m~
  `:5                replaced by @.
  j.                 implemented
  r.                 implemented
  4!:0               returns _1 on invalid arguments
  5!:4               implemented
  9!:10              removed
  9!:11              removed
  )script            replaced by 0!:2
  )sscript           replaced by 0!:3
  )off               replaced by 0!:55 and Ctrl D
  Archimedes         ported to
  DECstation         ported to
  MAC                removed online dictionary

Changes in Version 3.4, 1991 07 15 (APL91 Version)

  NB.                implemented
  National Use Chars implemented (Appendix A of dictionary)

Changes in Version 3.3, 1991 06 25

  ,.                 ravel items / append items
  0-frames           corrected
  a-trains           implemented
  c-trains           implemented

Changes in Version 3.2, 1991 06 02

  A.                 previously spelt @:
  C.                 previously spelt @.
  !.                 previously spelt &:
  ,.                 ravel items / append lists
  ;                  raze / link
  @.                 agenda
  @:                 at
  &:                 appose
  f.                 fix
  [.                 lev
  ].                 dex
  m.                 removed
  n.                 removed
  s.                 removed
  proverbs           dynamic reference
  0!:1               documentation updated

Changes in Version 3.1, 1991 05 17

  LinkJ
  m : 1              replaces  1 : m
  m : 2              replaces  2 : m
  m : 11             translate to tacit
  1!:11              indexed file read
  1!:12              indexed file write
  m.                 redefined
  n.                 redefined
  s.                 redefined
  u . v              determinant

Changes in Version 3.0, 1991 03 17

  [                  previously spelt }:
  ]                  previously spelt {:
  .                  previously spelt ..
  `                  previously spelt .
  `:                 previously spelt :
  :                  previously spelt ::
  +/\                invertible
  -/\                invertible
  */\                invertible
  %/\                invertible
  =/\                invertible
  ~:/\               invertible
  +/\.               invertible
  -/\.               invertible
  */\.               invertible
  %/\.               invertible
  =/\.               invertible
  ~:/\.              invertible
  ^~                 invertible
  ,~                 invertible
  ;~                 invertible
  ,:~                invertible
  |.&:k              shift
  b.                 boolean
  m.                 mean
  n.                 normalize
  s.                 standard deviation
  xyz:               given names
  tab                treated like space on input
  Mac                resizeable Language Summary

Changes in Version 2.9, 1991 02 15

  +:                 monad added
  *:                 monad added
  -:                 monad added
  ":                 dyad added
  0:                 added
  1:                 added
  m&g f&n            faster
  ::                 labels
  adverbs            n c, v c, c n, c v derive adverbs
  2!:0               WS name class
  2!:1               WS name list
  2!:2               WS save
  2!:4               WS copy
  2!:55              WS erase
  8!:9               (PC AT) Edit
  8!:16  8!:17       (Mac) query/set font attributes
  8!:19              (Mac) print screen
  Macintosh          improved user interface
  PC AT              improved user interface
  386ix              ported to
  SGI                ported to

Changes in Version 2.8, 1990 11 15

  ":                 faster on boxed arrays
  display            faster on boxed arrays
  5!:0               string representation inverse
  5!:3               string representation
  8!:2 8!:3          removed (replaced by DOS facility)
  8!:4 8!:5          set screen attributes
  8!:7               refresh screen
  )clear             removed (equivalent to  4!:55 (4!:1) 2 3 4 5 )
  PC AT              simplified session manager
  PC AT              added command line parameter /s

Changes in Version 2.7, 1990 10 22

  J                  code size reduced slightly
                     alternatives for national use characters
  =                  faster monad
  -.                 faster dyad
  ~.                 faster
  ~:                 faster monad
  ,.                 faster
  ;:                 rhematic rules re . and : changed
  e.                 faster
  i.                 faster dyad
  .                  cum (gerund from verb)
  :                  con (verb from gerund)
  ::                 faster
  u"v                rank (like u, but has ranks of v)
  u&.v               under
  =.                 indirect local  assignment
  =:                 indirect global assignment
  3!:2               convert from internal representation
  5!:0               fix
  5!:1               atomic representation
  8!:0  8!:1         query/set CGA mode
  9!:0  9!:1         query/set random link
  9!:4  9!:5         query/set prompt
  9!:6  9!:7         query/set box drawing chars
  9!:8  9!:9         query/set error msgs
  9!:10 9!:11        query/set ) system command names
  )box               removed
  )prompt            removed
  )reset             renamed )sic
  )rl                removed
  )script            profile facility added
  ATARI ST           ported to
  tutorial           faster

Version 2.0, 1990 08 09 (APL90 Version)




>> << Pri JfC LJ Phr Dic Voc !: Rel NuVoc wd Help Release