Modern programming languages such as Scala, Java and C# make extensive use of collections. A collection implementation represents a fixed choice in the dimensions of operation time and space utilization. Using the collection in a manner not consistent with this fixed choice can cause significant performance degradation. Often programmers have to choose between under-performing generic collection and specific data-structures at the cost of modularity and ex- tensibility. In his paper, we present and evaluate a generic collection library that automatically choose the appropriate collection implementations for an application. We implemented our solution in the Dotty compiler for Scala and showed that our implementation can choose optimal colle...
Carefully selecting the right collection datastructure can significantly improve the performance of ...
Datatype-generic programming involves parametrization of programs by the shape of data, in the form ...
Generics on the Java platform are compiled using the erasure trans-formation, which only supports by...
Collection data structures in standard libraries of programming languages are designed to excel for ...
Modularity and efficiency are often contradicting require-ments, such that programers have to trade ...
Scala is a powerful language which cur- rently provides a built-in library for non- strict Views wit...
Datatype-generic programming (DGP) involves parametrization of programs by the shape of data, in the...
While an integral part of all programming languages, the design of collection libraries is rarely st...
Datatype-generic programming (DGP) involves parametrization of programs by the shape of data, in the...
Scala relies on libraries as the default mechanism for language extension. While this provides an el...
Expandable collections are collections whose size may vary as elements are added and removed. Hash m...
Abstract: "Several programming languages arising from widely varying practical and theoretical consi...
This thesis proposes novel and efficient data structures, suitable for immutable collection librarie...
Program generators for high performance libraries are an appealing solution to the recurring problem...
Abstract Program generators for high performance libraries are an appealing solution to the recurrin...
Carefully selecting the right collection datastructure can significantly improve the performance of ...
Datatype-generic programming involves parametrization of programs by the shape of data, in the form ...
Generics on the Java platform are compiled using the erasure trans-formation, which only supports by...
Collection data structures in standard libraries of programming languages are designed to excel for ...
Modularity and efficiency are often contradicting require-ments, such that programers have to trade ...
Scala is a powerful language which cur- rently provides a built-in library for non- strict Views wit...
Datatype-generic programming (DGP) involves parametrization of programs by the shape of data, in the...
While an integral part of all programming languages, the design of collection libraries is rarely st...
Datatype-generic programming (DGP) involves parametrization of programs by the shape of data, in the...
Scala relies on libraries as the default mechanism for language extension. While this provides an el...
Expandable collections are collections whose size may vary as elements are added and removed. Hash m...
Abstract: "Several programming languages arising from widely varying practical and theoretical consi...
This thesis proposes novel and efficient data structures, suitable for immutable collection librarie...
Program generators for high performance libraries are an appealing solution to the recurring problem...
Abstract Program generators for high performance libraries are an appealing solution to the recurrin...
Carefully selecting the right collection datastructure can significantly improve the performance of ...
Datatype-generic programming involves parametrization of programs by the shape of data, in the form ...
Generics on the Java platform are compiled using the erasure trans-formation, which only supports by...