Site Menu Project Specification Implementation Recommendations Reference Needs Updating Work in Progress Wastebasket Wiki Manual |
Import AggregatorsWiP.ImportAggregators HistoryHide minor edits - Show changes to markup 2015-09-20 17:40
by -
Changed line 27 from:
to:
Advantages: Re-export is clearly visible and fully under library control. Allows combination of re-export and rebranded export. 2015-09-20 17:39
by -
Changed lines 15-16 from:
To re-export an imported module, it might be marked with a re-export marker, such as an plus sign ... to:
To re-export an imported module, it may be marked with a re-export marker, a trailing plus ... Deleted line 27:
2015-09-20 17:38
by -
Changed line 12 from:
The following approach to import aggregation has been selected as a holding position: to:
The following approach to import aggregation has been selected for adoption into the language: 2010-01-20 11:52
by -
Changed lines 12-13 from:
The following approaches to import aggregation has been selected as a holding position: to:
The following approach to import aggregation has been selected as a holding position: Changed line 39 from:
status : Collections.Status; (* only possible with explicit re-export approach *) to:
status : Collections.Status; 2010-01-20 11:51
by -
Changed lines 12-30 from:
The following approaches are capable of achieving this: Re-Export by DefaultAny module imported by a module might automatically be re-exported.
Implicit Re-ExportA definition part which imports one or more modules but exports no items on its own might be deemed to have the purpose of re-exporting all the imported modules ... DEFINITION MODULE Collections; IMPORT Stack, Queue, BinarySearchTree, Trie, HashTable, DynamicArray; END Collections.
to:
The following approaches to import aggregation has been selected as a holding position: Explicit Re-ExportTo re-export an imported module, it might be marked with a re-export marker, such as an plus sign ... 2010-01-19 16:31
by -
Changed line 37 from:
IMPORT Collection Status?, Stack*, Queue+, Binary Search Tree?+, Trie+, Hash Table?+, Dynamic Array?+; to:
IMPORT Collection Status?, Stack+, Queue+, Binary Search Tree?+, Trie+, Hash Table?+, Dynamic Array?+; 2010-01-19 16:31
by -
Changed lines 33-34 from:
To re-export an imported module, it might be marked with a re-export marker, such as an asterisk ... to:
To re-export an imported module, it might be marked with a re-export marker, such as an plus sign ... Changed line 37 from:
IMPORT Collection Status?, Stack*, Queue*, Binary Search Tree?*, Trie*, Hash Table?*, Dynamic Array?*; to:
IMPORT Collection Status?, Stack*, Queue+, Binary Search Tree?+, Trie+, Hash Table?+, Dynamic Array?+; 2010-01-17 06:37
by -
Changed line 45 from:
to:
2010-01-17 06:36
by -
Changed line 6 from:
CONST Foo = Original Exporter?.Foo; (* exported as Re Exporter?.Foo *) to:
CONST Foo = Original Exporter?.Foo; (* re-export as Re Exporter?.Foo *) 2010-01-17 06:35
by -
Changed lines 37-38 from:
IMPORT Stack*, Queue*, Binary Search Tree?*, Trie*, Hash Table?*, Dynamic Array?*; to:
IMPORT Collection Status?, Stack*, Queue*, Binary Search Tree?*, Trie*, Hash Table?*, Dynamic Array?*; Added lines 41-42:
CONST Status = Collection Status?.Status; (* re-export as Collections.Status *) Changed line 45 from:
to:
Changed lines 55-57 from:
VAR stack : Stack; to:
VAR stack : Stack; status : Collections.Status; (* only possible with explicit re-export approach *) Changed line 60 from:
stack := Stack.New(size); to:
stack := Stack.New(size, status); 2010-01-17 06:24
by -
Changed line 1 from:
In both PIM and ISO Modula-2, imported identifiers may be re-exported by including them in a CONST declaration ... to:
In both PIM and ISO Modula-2, imported identifiers may be re-exported by including them in a 2010-01-17 06:23
by -
Changed lines 1-3 from:
It is often desirable to import a group of modules with a single import statement, importing only a single identifier. The following approaches might be used to achieve this: Re-Export by Defaultto:
In both PIM and ISO Modula-2, imported identifiers may be re-exported by including them in a CONST declaration ... DEFINITION MODULE ReExporter; IMPORT OriginalExporter; CONST Foo = OriginalExporter.Foo; (* exported as ReExporter.Foo *) END ReExporter. However, there is no instrument to re-export identifiers without rebranding them. The ability to re-export a group of modules is desirable to allow the import of a library that consists of multiple modules using a single module identifier for the entire library. The following approaches are capable of achieving this: Re-Export by DefaultChanged line 20 from:
Implicit Re-Exportto:
Implicit Re-ExportChanged line 32 from:
Explicit Re-Exportto:
Explicit Re-ExportChanged line 46 from:
Importing the Aggregatorto:
Importing the Aggregator2010-01-17 06:04
by -
Changed lines 6-8 from:
Advantages: No additional syntax required. Disadvantages: Re-export cannot be turned off. to:
Changed lines 18-20 from:
Advantages: No additional syntax required. Disadvantages: Re-export will no longer work if the aggregate module is extended with declarations. to:
Changed lines 32-33 from:
Advantages: Re-export is clearly visible and fully under library control. Disadvantages: Although very minor, additional syntax is required. to:
2010-01-17 06:04
by -
Added lines 6-8:
Advantages: No additional syntax required. Disadvantages: Re-export cannot be turned off. Added lines 18-20:
Advantages: No additional syntax required. Disadvantages: Re-export will no longer work if the aggregate module is extended with declarations. Added lines 31-33:
Advantages: Re-export is clearly visible and fully under library control. Disadvantages: Although very minor, additional syntax is required. 2010-01-16 18:53
by -
Changed lines 4-5 from:
Any item imported by a module might automatically be re-exported. to:
Any module imported by a module might automatically be re-exported. Changed lines 7-8 from:
A definition part which imports one or more items but exports no items on its own might be deemed to have the purpose of re-exporting all the imported items ... to:
A definition part which imports one or more modules but exports no items on its own might be deemed to have the purpose of re-exporting all the imported modules ... Changed line 27 from:
Importing to:
Importing 2010-01-16 18:25
by -
Changed line 22 from:
(* CONST, VAR, TYPE, PROCEDURE definitions *) to:
(* CONST, VAR, TYPE, PROCEDURE declarations *) 2010-01-16 18:23
by -
Changed line 1 from:
It is sometimes desirable to import a group of modules with a single import statement, importing only a single identifier. The following approaches might be used to achieve this: to:
It is often desirable to import a group of modules with a single import statement, importing only a single identifier. The following approaches might be used to achieve this: 2010-01-16 17:56
by -
Changed lines 6-8 from:
Explicit Re-ExportTo re-export an imported module, it might be marked with a re-export marker, such as an asterisk ... to:
Implicit Re-ExportA definition part which imports one or more items but exports no items on its own might be deemed to have the purpose of re-exporting all the imported items ... Changed lines 11-14 from:
IMPORT Stack*, Queue*, Binary Search Tree?*, Trie*, Hash Table?*, Dynamic Array?*; (* CONST, VAR, TYPE, PROCEDURE definitions *) to:
IMPORT Stack, Queue, Binary Search Tree?, Trie, Hash Table?, Dynamic Array?; Changed lines 15-17 from:
Implicit Re-ExportA definition part which imports one or more items but exports no items on its own might be deemed to have the purpose of re-exporting all the imported items ... to:
Explicit Re-ExportTo re-export an imported module, it might be marked with a re-export marker, such as an asterisk ... Changed lines 20-22 from:
IMPORT Stack, Queue, Binary Search Tree?, Trie, Hash Table?, Dynamic Array?; to:
IMPORT Stack*, Queue*, Binary Search Tree?*, Trie*, Hash Table?*, Dynamic Array?*; (* CONST, VAR, TYPE, PROCEDURE definitions *) 2010-01-16 17:55
by -
Added lines 2-4:
Reexport by DefaultAny item imported by a module might automatically be re-exported. |