It appears you don't have support to open PDFs in this web browser. To view this file, Open with your PDF reader
Abstract
The flexibility of dynamically typed languages such as JavaScript, Python, Ruby, and Scheme comes at the cost of run-time type checks. Some of these checks can be eliminated via control-flow analysis. However, traditional control-flow analysis (CFA) is not ideal for this task as it ignores flow-sensitive information that can be gained from dynamic type predicates, such as JavaScript's instanceof and Scheme's pair?, and from type-restricted operators, such as Scheme's car. Yet, adding flow-sensitivity to a traditional CFA worsens the already significant compile-time cost of traditional CFA. This makes it unsuitable for use in just-in-time compilers.
In response, this dissertation presents a fast, flow-sensitive type-recovery algorithm based on the linear-time, flow-insensitive sub-0CFA. The algorithm has been implemented as an experimental optimization into Chez Scheme compiler, where it has proven to be effective, justifying the elimination of about 60% of run-time type checks in a large set of bench-marks. The algorithm processes on average over 100,000 lines of code per second and scales well asymptotically, running in only O(n log n) time. This compile-time performance and scalability is achieved through a novel combination of data structures and algorithms.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
Details
Supplemental files
Document includes 1 supplemental file(s).
Special programs or plug-ins may be required to view some files.
The supplemental file or files you are about to download were provided to ProQuest by the author as a part of a dissertation or thesis. The supplemental files are provided "AS IS" without any warranty. ProQuest is not responsible for the content, format or impact of the supplemental file(s) on your system. In some cases, the file type may be unknown or may be a .exe file. We recommend caution as you open such files.
Copyright of original materials contained in a supplemental files is retained by the author and your access to the supplemental files is subject to the ProQuest Terms and Conditions of use.
Downloading time depends on the size of the file(s) that you are downloading. System may take some time to download them.Please be patient.