Dyalog APL versions: Difference between revisions

Jump to navigation Jump to search
1,393 bytes added ,  10:52, 14 May 2020
Line 4: Line 4:


[http://help.dyalog.com/12.1/html/interoperability.htm Release notes] ([http://docs.dyalog.com/12.0/Dyalog%20APL%20Release%20Notes.v11.0.pdf pdf])
[http://help.dyalog.com/12.1/html/interoperability.htm Release notes] ([http://docs.dyalog.com/12.0/Dyalog%20APL%20Release%20Notes.v11.0.pdf pdf])
Version 11.0 was released October 2006. It introduced [[object-oriented programming]] extensions designed to work like [[.NET]] and based technologically on the existing [[namespace]]s. The primary new features were classes, instances (objects), and interfaces, supporting inheritance, access control, and constructors and destructors. Instances could be placed in arrays, and [[empty]] arrays could store the class of an instance in the [[prototype]]. When instantiated (for instance by taking the [[First]] element of an empty array), a prototype object would be created using the class's [[niladic]] constructor, if present. Classes could interact with namespaces by importing their functions as methods. Dyalog's Windows GUI framework, already based on .NET classes, was integrated with the new Dyalog classes.
Dyalog 11.0 also included primitive extensions:
* [[Squad Indexing|Index]] (<source lang=apl inline>⌷</source>), possibly with [[Function axis|axis]], was added. A monadic case, called [[Materialise]], was also introduced in order to get a class's default property.
* The [[Power (operator)|Power]] (<source lang=apl inline>⍣</source>) operator was added, with support for [[inverse]]s.
* [[And]] (<source lang=apl inline>∧</source>) and [[Or]] (<source lang=apl inline>∨</source>) were extended to non-[[Boolean]]s as the [[LCM]] and [[GCD]] functions, respectively.


== 12.0 ==
== 12.0 ==

Navigation menu