3,038
edits
(→12.0) |
(→11.0) |
||
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 == |