Difference between revisions of "ScalaOptimization"
From JVMLangSummit
Jump to navigationJump to search (→Scala Optimization) |
(→Abstract) |
||
Line 7: | Line 7: | ||
; Talk Abstract: Scala relies on libraries as the default mechanism for language extension. While this provides an elegant solution for growing the language, the performance penalty incurred by call-by-name parameters, boxing and anonymous functions is high. We show that inlining alone is not enough to remove this overhead, and present a solution based on decompilation of library code combined with inlining, dead code elimination, and copy propagation. We evaluate our approach on two language extensions, Java-like assert and C-like for-loops and show improvements of up to 45%. | ; Talk Abstract: Scala relies on libraries as the default mechanism for language extension. While this provides an elegant solution for growing the language, the performance penalty incurred by call-by-name parameters, boxing and anonymous functions is high. We show that inlining alone is not enough to remove this overhead, and present a solution based on decompilation of library code combined with inlining, dead code elimination, and copy propagation. We evaluate our approach on two language extensions, Java-like assert and C-like for-loops and show improvements of up to 45%. | ||
+ | http://wiki.jvmlangsummit.com/pdf/TBD | ||
=== Author Bio === | === Author Bio === |
Revision as of 11:19, 25 September 2008
Contents
Optimizing Higher-Order Functions in Scala
Julian Dragos
- Project
- www.scala-lang.org
Abstract
- Talk Abstract
- Scala relies on libraries as the default mechanism for language extension. While this provides an elegant solution for growing the language, the performance penalty incurred by call-by-name parameters, boxing and anonymous functions is high. We show that inlining alone is not enough to remove this overhead, and present a solution based on decompilation of library code combined with inlining, dead code elimination, and copy propagation. We evaluate our approach on two language extensions, Java-like assert and C-like for-loops and show improvements of up to 45%.
http://wiki.jvmlangsummit.com/pdf/TBD
Author Bio
- <update the bio here>
Key Issues for Discussion (cooperative)
(please expand cooperatively) Talk:Scala