000200245 001__ 200245
000200245 005__ 20190316235942.0
000200245 037__ $$aREP_WORK
000200245 245__ $$aImproving the Performance of Scala Collections with Miniboxing
000200245 269__ $$a2014
000200245 260__ $$c2014
000200245 336__ $$aReports
000200245 520__ $$aUsing generics, Scala collections can be used to store different types of data in a type-safe manner. Unfortunately, due to the erasure transformation, the performance of generics is degraded when storing primitive types, such as integers and floating point numbers. Miniboxing is a novel translation for generics that restores primitive type performance. Naturally, a good choice would be to use miniboxing to translate Scala collections. In this paper we explore the patterns used to implement the Scala collections, describe how they are transformed by miniboxing and finally compare the performance of the two transformations on a mockup of the Scala collection library. The benchmarks show our prototype implementation (http://scala-miniboxing.org) can speed up collection operations by 45% without any need for programmer intervention.
000200245 6531_ $$aScala
000200245 6531_ $$agenerics
000200245 6531_ $$aspecialization
000200245 6531_ $$aminiboxing
000200245 6531_ $$aprimitive types
000200245 700__ $$aGenêt, Aymeric
000200245 700__ $$0245399$$aUreche, Vlad$$g200717
000200245 700__ $$0241835$$aOdersky, Martin$$g126003
000200245 8564_ $$uhttp://scala-miniboxing.org/$$zURL
000200245 8564_ $$s315528$$uhttps://infoscience.epfl.ch/record/200245/files/mbox2-trans-big.gif$$yn/a$$zn/a
000200245 8564_ $$s87286$$uhttps://infoscience.epfl.ch/record/200245/files/miniboxing-collections.pdf$$yn/a$$zn/a
000200245 909C0 $$0252187$$pLAMP$$xU10409
000200245 909CO $$ooai:infoscience.tind.io:200245$$pIC$$preport$$qGLOBAL_SET
000200245 917Z8 $$x200717
000200245 917Z8 $$x200717
000200245 917Z8 $$x200717
000200245 917Z8 $$x200717
000200245 917Z8 $$x200717
000200245 937__ $$aEPFL-REPORT-200245
000200245 973__ $$aEPFL
000200245 980__ $$aREPORT