Dyalog APL versions: Difference between revisions
Jump to navigation
Jump to search
no edit summary
Miraheze>Marshall No edit summary |
Miraheze>Marshall No edit summary |
||
Line 1: | Line 1: | ||
[[Dyalog APL]] is released in numbered versions, with approximately one version per year. Each release version is classified as a major (.0) or minor (point) release, depending on whether the major version number is incremented. Major versions are more likely to introduce new features and may spend longer in development. | [[Dyalog APL]] is released in numbered versions, with approximately one version per year. Each release version is classified as a major (.0) or minor (point) release, depending on whether the major version number is incremented. Major versions are more likely to introduce new features and may spend longer in development. | ||
== 16.0 == | |||
Release [https://www.dyalog.com/dyalog/dyalog-versions/160.htm announcement], [http://docs.dyalog.com/16.0/Dyalog%20Version%2016.0%20Release%20Notes.pdf notes (pdf)] | |||
Version 16.0 was released in June 2017. It added several new primitives as well as tools for working with [[wikipedia:JSON|JSON]] and [[wikipedia:Comma-separated values|CSV]] files. | |||
The following new primitive functions and operators were added: | |||
* [[Where]] (<source lang=apl inline>⍸</source>) | |||
* [[Interval Index]] (<source lang=apl inline>⍸</source>) | |||
* [[Nest]] (<source lang=apl inline>⊆</source>) | |||
* [[Partition]] (<source lang=apl inline>⊆</source>), another way to write a function which was previously only accessible with [[migration level]] 3 | |||
* [[At operator]] (<source lang=apl inline>@</source>) | |||
* [[Stencil]] (<source lang=apl inline>⌺</source>) | |||
Additionally, [[system function]]s <source lang=apl inline>⎕JSON</source> and <source lang=apl inline>⎕CSV</source> were added to import and export data in common formats. Some JSON support was already present; 16.0 promoted it to a system function. | |||
Work was continued on the [[RIDE]] [[session]] environment, which was made the default IDE on Linux in addition to macOS. Additionally, the [[HTMLRenderer]] and [[MiServer]] user interface tools were introduced. | |||
Significant [https://www.dyalog.com/dyalog/dyalog-versions/160/performance.htm performance improvements] were made in [[structural function|structural]] and selective functions such as [[Transpose]], [[Catenate]], [[Take]], [[Rotate]], and [[Reverse]], and other primitives including [[Enlist]], [[Encode]], and [[Decode]]. | |||
== 17.0 == | == 17.0 == | ||
Release [https://www.dyalog.com/dyalog/dyalog-versions/170.htm announcement], [http://help.dyalog.com/17.0/Content/RelNotes17.0/Language%20Enhancements.htm notes] | |||
Version 17.0 was released in July 2018. It features significant work on tools for using APL and interfacing with other languages, as well as performance, and a relatively small number of new language features. | Version 17.0 was released in July 2018. It features significant work on tools for using APL and interfacing with other languages, as well as performance, and a relatively small number of new language features. | ||
Line 19: | Line 39: | ||
== 17.1 == | == 17.1 == | ||
Release [https://www.dyalog.com/dyalog/dyalog-versions/171.htm announcement], [http://help.dyalog.com/latest/index.htm#RelNotes17.1/Highlights.htm notes] | |||
Version 17.1 was released in October 2019, shortly after the [[Dyalog '19]] user meeting. It contains few new features and almost no performance changes. The primary changes to the language were to add the [[Dyalog APL Link|Link]] system using <source lang=apl inline>]LINK</source>, allow running Dyalog through [[wikipedia:Docker (software)|docker]] containers, and improve cross-platform support for [[HTMLRenderer]]. Additionally, Dyalog's licensing was changed to allow non-commercial users to download and run it for free, without applying for a non-commercial license from Dyalog. | Version 17.1 was released in October 2019, shortly after the [[Dyalog '19]] user meeting. It contains few new features and almost no performance changes. The primary changes to the language were to add the [[Dyalog APL Link|Link]] system using <source lang=apl inline>]LINK</source>, allow running Dyalog through [[wikipedia:Docker (software)|docker]] containers, and improve cross-platform support for [[HTMLRenderer]]. Additionally, Dyalog's licensing was changed to allow non-commercial users to download and run it for free, without applying for a non-commercial license from Dyalog. |