Dyalog APL: Difference between revisions
Jump to navigation
Jump to search
Miraheze>Marshall No edit summary |
Miraheze>Adám Brudzewsky No edit summary |
||
Line 12: | Line 12: | ||
| operating systems = Windows, Linux, macOS, AIX | | operating systems = Windows, Linux, macOS, AIX | ||
| license = Free for personal use / Proprietary commercial software | | license = Free for personal use / Proprietary commercial software | ||
| website = [https://www.dyalog.com/dyalog/index.htm | | website = [https://www.dyalog.com/dyalog/index.htm dyalog.com/dyalog/index.htm] | ||
| download = [https://www.dyalog.com/download-zone.htm Non-commercial download] | | download = [https://www.dyalog.com/download-zone.htm Non-commercial download] | ||
| file_ext = .dws, .dse, .dcf, .dyalog, .dyapp, .apl, .apla, .aplf, .aplo, .apln, .aplc, .apli | | file_ext = .dws, .dse, .dcf, .dyalog, .dyapp, .apl, .apla, .aplf, .aplo, .apln, .aplc, .apli |
Revision as of 13:08, 28 October 2019
Dyalog APL was first released by British company Dyalog Ltd. in 1983 and, as of 2018, is available for AIX, Linux (including on the Raspberry Pi), macOS and Microsoft Windows platforms. It is based on APL2, with extensions to support object-oriented programming and functional programming. Licences are free for personal/non-commercial use.
In 1995, two of the development team — John Scholes and Peter Donnelly — were awarded the Iverson Award for their work on the interpreter. Gitte Christensen and Morten Kromberg were joint recipients of the Iverson Award in 2016.
The most important extensions to the original APL language include:
- 1983: Nested arrays: Any element of an array can be another array (APL2)
- 1990: Namespaces
- 1995: Keywords (If/Then/Else, Repeat/Until, exception handling, and so on)
- 1996: Functional programming: dfns provide lexical scope and Dfns
- 2006: Object orientated programming, allowing integration with OO frameworks and Microsoft .NET
- 2014: Point-free or "Train" syntax similar to that in the J programming language
- 2014: Futures and isolates for Parallel computing