36 citations found. Retrieving documents...
Ralph E. Johnson, Justin O. Graver, and Lawrence W. Zurawski. TS: An Optimizing Compiler for Smalltalk. In Proceedings OOPSLA '88, pages 18--26, November 1988. Published as ACM SIGPLAN Notices, volume 23, number 11.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

Annotating Java Class Files with Virtual Registers for.. - Jones, Kamin (1999)   (8 citations)  (Correct)

....if physical, RIPs) and register spilling (swaps) Our notion is to provide a division of labor between the class file annotator on the server and the code generator on the client. 1 This environment differs from both conventional batch compilation and compilation for interactive languages. [1] [2] In conventional compilation, to a first order of approximation, compilation costs are ignored, and the target machine is known; no holds are barred in terms of aggressive analyses and machine dependent trickery. In the interactive environment, the target machine is known, but the cost of ....

....the number of uses of the live range, and how many other live ranges are simultaneously live with this live range. Once this prioritization has been calculated, the VR annotation is added to the .class file. 10 int test(boolean mode, int U[ int V[ int SUM; if (mode) A1 = U[0] A2 = U[1]; else B1 = V[0] B2 = V[1] if (mode) SUM = A1 A2; else SUM = B1 B2; return SUM; Figure 6: Example from Chaitin (size = 2, SPARCstation 20) 6 Examples In the following pages are two examples of code generation for the SPARC using the annotation scheme described ....

[Article contains additional citation context not shown here]

Ralph Johnson, Justin O. Graver, and Lawrence W. Zurawski. TS: An optimizing compiler for smalltalk. In Proceedings OOPSLA '88, ACM SIGPLAN Notices, pages 18--26, November 1988. Published as Proceedings OOPSLA '88, ACM SIGPLAN Notices, volume 23, number 11.


Efficient Implementation of Java Interfaces.. - Alpern, Cocchi.. (2001)   (8 citations)  (Correct)

....i.foo( can be dispatched as a virtual method call to B: foo( 2. The compiler cannot virtualize the call to i2.foo( lacking any conclusive information on the type of i2. 3. The compiler can rst virtualize and then even devirtualize the call i3.foo( since intra procedural type analysis [27, 9] determines that i3 can only contain objects with concrete type B. The optimizing compiler can inline devirtualized method calls, virtual calls, and interface invocations. The compiler can inline a devirtualized call directly (without guarding) since analysis has revealed the exact target. To ....

R. Johnson. TS: An optimizing compiler for Smalltalk. In ACM Conference on Object-Oriented Programming Systems, Languages, and Applications, pages 18-26, 1988.


The Design and Implementation of the SELF Compiler, an.. - Chambers (1992)   (3 citations)  (Correct)

.... type information upon which to base optimizations like procedure inlining [Joh87] In an effort to improve the speed of Smalltalk programs, Ralph Johnson and his group at the University of Illinois at UrbanaChampaign have designed an extension to Smalltalk called Typed Smalltalk [Joh86, JGZ88, McC89, Hei90, Gra89, GJ90]. They added explicit type declarations to Smalltalk and built an optimizing compiler, called TS, that uses these type declarations to improve run time performance. A type in Typed Smalltalk is either a (possibly singleton) set of classes or a signature. A variable declared to be of a ....

Ralph E. Johnson, Justin O. Graver, and Lawrence W. Zurawski. TS: An Optimizing Compiler for Smalltalk. In OOPSLA '88 Conference Proceedings, pp. 18-26, San Diego, CA, October, 1988. Published as SIGPLAN Notices 23(11), November, 1988.


Vortex: An Optimizing Compiler for Object-Oriented.. - Dean, DeFouw, Grove.. (1996)   (68 citations)  (Correct)

....coexist. 2. 1 Intraprocedural Class Analysis Intraprocedural class analysis uses a standard iterative dataflow approach to compute for each program expression a set of classes such that any runtime value of the expression is guaranteed to be an instance of one of the classes in the computed set [Johnson 88, Chambers Ungar 90] The analysis maintains a mapping from variables to sets of classes, and propagates this mapping through the procedure s control flow graph. By default, variables map to the set of all possible classes, but literals and the results of object allocations (new) are mapped to ....

Ralph Johnson. TS: AN Optimizing Compiler for Smalltalk. In Proceedings OOPSLA '88, pages 18--26, November 1988. Published as ACM SIGPLAN Notices, volume 23, number 11.


Fast Algorithms for Compressed Multi-Method Dispatch.. - Dujardin, Amiel, Simon (1996)   (10 citations)  (Correct)

....performs type analysis and run time type tests to avoid method dispatch and inline the code of the MSA method. Several sophisticated techniques exist to achieve inlining: type prediction [Ungar and Patterson 1983; Goldberg and Robson 1983; Deutsch and Schifman 1984] and type casing [R. E. Johnson and Zurawski 1988] in Smalltalk, customization, splitting [Chambers et al. 1989; Chambers and Ungar 1991; Ungar et al. 1992] type feedback and adaptive optimization [Holzle and Ungar 1996] in Self. More recently, Ferragina and Muthukrishnan 1996] reduces method dispatch to the inclusion test of integer intervals. ....

R. E. Johnson, J. O. G. and Zurawski, L. W. 1988. TS: An optimizing compiler for Smalltalk. In OOPSLA Conference Proceedings. 18--26.


The Concert System -- Compiler and Runtime Support for.. - Andrew Chien Vijay (1993)   (11 citations)  (Correct)

....machines. The ultimate goal of such studies is to show that COOP languages are a viable and attractive basis for efficient parallel computation. The Concert System 17 5 Background and Related Work The Concert system is related to prior work on efficient implementation of both object oriented [22, 31, 16] and parallel systems [20, 26] In particular, many of the optimizations we have discussed have their inspiration in the techniques developed by the SELF compiler group [5] Of course, the major distinction is that our work focuses on the problems associated with concurrency, distribution, and ....

R. E. Johnson, J. O. Graver, and L. W. Zurawski. Ts: An optimizing compiler for smalltalk. In OOPSLA '88 Proceedings, pages 18--26, September 1988.


From Types to Dataflow: Code Analysis for an Object-Oriented.. - Barnard (1993)   (3 citations)  (Correct)

....security and efficiency were introduced. In this chapter, one of the major exponents of the typing of Smalltalk will be described. 1 The work done at The University of Illinois at Urbana Champaign on the language Typed Smalltalk (TS) by the research group headed by Ralph Johnson [Joh86, JG88, JGZ88, Gra89, GJ90] was, until recently, the most advanced in this area. More recently other research groups have picked up on the general field of typing imperative object oriented languages and some interesting results have emerged [Hen90, Hen91, PS91a, PS91b] However the basic results of the work ....

Ralph E. Johnson, Justin O. Graver, and Lawrence W. Zurawski. TS: An optimizing compiler for Smalltalk. ACM SIGPLAN Notices, 23(11):18--26, November 1988. Proceedings of the Conference on Object-Oriented Programming: Systems, Languages and Applications.


Type Feedback vs. Concrete Type Inference: A Comparison of.. - Agesen, Hölzle (1995)   (1 citation)  (Correct)

....technique to handle dynamically dispatched sends. Unfortunately, Suzuki was unable to fully implement his system within the limited heap space of Smalltalk 76 and only managed to test a simplified version of the inference algorithm on some of the number classes. The Typed Smalltalk project [JGZ88] incorporated a type inferencer for Smalltalk which relied on explicit type declarations inserted by the programmer; these types were specified as sets of classes. A second, more abstract kind of type was provided for type checking but was not used by the compiler) Unfortunately, the system was ....

Ralph Johnson, Justin Graver, and Lawrence Zurawski. TS: An optimizing compiler for Smalltalk. In OOPSLA `88 Conference Proceedings, San Diego, CA, October 1988. 21


An Assessment of Call Graph Construction Algorithms - Grove, Chambers (2000)   (Correct)

....purely static and one with profile guided class prediction. Benchmark programs were compiled using the following configurations: The base configuration represents an aggressive combination of intraprocedural and limited interprocedural optimizations which include: intraprocedural class analysis [John88, Cham90], hard wired class prediction for common messages (Cecil only) Deut84, Cham89] splitting [Cham89] class hierarchy analysis [Fern95, Dean95, Diwa96] inlining, static class prediction [Dean96] closure optimizations that identify and stack allocate LIFOclosures and sink partially dead closure ....

Ralph E. Johnson, Justin O. Graver, and Lawrence W. Zurawski. TS: An optimizing compiler for smalltalk. In Proceedings OOPSLA '88, pages 18--26, November 1988. Published as ACM SIGPLAN Notices, volume 23, number 11.


Refactoring Object-Oriented Frameworks - Opdyke (1992)   (124 citations)  (Correct)

.... the Lisa Toolkit [57] and Smalltalk Model View Controller [48] More recently, several projects have been undertaken at the University of Illinois at Urbana Champaign to design frameworks; these include the Typed Smalltalk (TS) optimizing compiler framework for code generation and optimization [60], the FOIBLE framework for visual programming [58] and the Choices object oriented operating system. Choices, written in C , is more than just an operating system; it is really an operating system framework consisting of interlocking frameworks for file systems [77] virtual memory [103] ....

....In each newly defined subclass, the functions can be simplified by replacing the conditional statements with just the code segment for the condition corresponding to (implied by) the subclass. There are several examples of this type of restructuring that occurred in the Typed Smalltalk [60] project and the Choices operating system project; it was also useful in converting a program written in the C programming language to C . The Typed Smalltalk (TS) project is developing an optimizing compiler for a typed version of Smalltalk. In the TS compiler, instances of the FlowNode class, ....

Ralph E. Johnson, Justin O. Graver, and Lawrence W. Zurawski. TS: An optimizing compiler for Smalltalk. In Proceedings of OOPSLA `88, pages 18--26, November 1988. printed as SIGPLAN Notices, 23(11).


Dynamic vs. Static Optimization Techniques for.. - Hölzle, Agesen   (Correct)

....to handle dynamically dispatched sends. Unfortunately, Suzuki was unable to fully implement his system within the limitations of the Smalltalk 76 implementation and only managed to test a simplified version of the inference algorithm on some of the number classes. The Typed Smalltalk project [JGZ88] incorporated a type inferencer for Smalltalk which relied on explicit type declarations inserted by the programmer; these types were specified as sets of classes. A second, more abstract kind of type was provided for type checking but was not used by the compiler) Unfortunately, the system was ....

Ralph Johnson, Justin Graver, and Lawrence Zurawski. TS: An Optimizing Compiler for Smalltalk. In OOPSLA `88, Object-Oriented Programming Systems, Languages and Applications, p. 18-26, San Diego, CA, September 1988.


Global Tagging Optimization by Type Inference - Henglein (1992)   (46 citations)  (Correct)

....15.1 500 0.2 30 70 10 90 cogen 65.1 2,569 1.1 (1.2) 50 50 25 75 dyn typ 66.2 2,685 1.0 (0.9) 35 65 35 65 cmp 232.6 8,946 4. 3 (15.0) 15 85 35 65 Table 1: Statistics on performance of dynamic type inference prototype languages [AM91] and object oriented languages; e.g. in Smalltalk [JGZ88] and Self [CU90] The application of type finding and type information to tagging optimization can be traced to (at least) the early work on SETL optimization [FSS75,SSS81] which is based on Tenenbaum s thesis referenced above. Intraprocedural representation analysis for local optimization of ....

R. Johnson, J. Graver, and L. Zurawski. TS: an optimizing compiler for Smalltalk. In ObjectOriented Programming Systems, Languages and Applications (OOPSLA), Conf. Proc., San Diego, California, pages 18--26, ACM Press, Sept. 1988.


The Ts Type System - Tan   (Correct)

....Implementing type inclusion rules : 43 4. 8 The updating protocol : 55 viii 1 Introduction The Typed Smalltalk project is building an optimizing compiler for a variant of Smalltalk [JGZ88] Typed Smalltalk differs from Smalltalk in that programs can be annotated with type information, which the compiler can use to optimize programs. The type system for Typed Smalltalk is the first type system for a Smalltalk like language that is both type safe and flexible enough to handle the ....

Ralph E. Johnson, Justin O. Graver, and Lawrence W. Zurawski. TS: An optimizing compiler for Smalltalk. In Proceedings of OOPSLA `88, Object-Oriented Programming Systems, Languages and Applications, pages 18--26, November 1988. printed as SIGPLAN Notices, 23(11).


Whole-Program Optimization of Object-Oriented Languages - Chambers, Dean, Grove (1996)   (27 citations)  (Correct)

....static analysis and dynamic code generation are being developed [Consel Noel 96, Leone Lee 96, Auslander et al. 96, Engler et al. 96] 6. 2 Static Class Analysis The general approach of class analysis based on sets of concrete classes started with the Typed Smalltalk system [Johnson 86, Johnson 88] Most subsequent work on compiling object oriented languages has used a similar framework. Palsberg and Schwartzbach used a type system based on points (single classes) and cones (all classes inheriting from some class) in their work [Palsberg Schwartzbach 94] A number of researchers have ....

Ralph Johnson. TS: AN Optimizing Compiler for Smalltalk. In Proceedings OOPSLA '88, ACM SIGPLAN Notices, pages 18--26, November 1988. Published as Proceedings OOPSLA '88, ACM SIGPLAN Notices, volume 23, number 11.


Experiences using Design Patterns to Reorganize an.. - Zimmer (1994)   (2 citations)  (Correct)

....of the design implementation and to design application parts which are generic. Design patterns accelerated this process by providing larger, well designed building blocks. 3.2. 3 Metrics design rules Many design quality metrics [Chid91] are derived from design rules as described in [John88]; for example Number of methods is derived from Small class size . In our opinion, results of metrics applied to a class or a library must not consist of a simple good or bad rating (or a rating like 1.97) but they should point out possible faults and point to appropriate solutions. Of ....

....which preserve the behaviour, is complex. Tools to support the developer during this error prone detail work are not available. A good approach to reduce the complexity of this process is to break the reorganization into smaller steps. Firstly, simple restructuring operations, as described in [John88] [Opdy92] are applied. Secondly, applications classes are identified which correspond to the classes in the cho1. The current catalogue is considerably better (naming, discussion of consequences, examples) than the one used during the reorganization process dated from 5 93. The overview about ....

[Article contains additional citation context not shown here]

Ralph Johnson. TS: AN optimizing compiler for smalltalk. In Proceedings OOPSLA '88, pages 18--26, November 1988. Published as ACM SIGPLAN Notices, volume 23, number 11.


An Object-Oriented Operating System - Russo (1991)   (26 citations)  (Correct)

....which any object assigned to the variable must have. In many object oriented languages, this signature is specified with a class. The signature of this class then implicitly defines the type of the variable. Other object oriented languages allow signatures to be specified independent of classes[JGZ88] 3 As will be seen in the next section, this is not strictly true. Inheritance allows classes to delegate some or all of this responsibility to other classes. 4 In most languages names like self or this usually refer to this object within the context of the implementation of a particular ....

....Obviously, the answer to this question depends heavily on the particular object oriented language chosen. Of the languages discussed in Section 3.2.1, Smalltalk and CLOS are unlikely to be useful for operating system construction for performance and or runtime support reasons. Work by Johnson[JGZ88] to develop a compiled Smalltalk capable of producing high quality stand alone code should change this in the future. C , Eiffel, and Trellis Owl are probably all reasonable choices. Each is a statically typed objectoriented language allowing the production of efficient code. Modern statically ....

Ralph E. Johnson, Justin O. Graver, and Lawrence W. Zurawski. TS: An Optimizing Compiler for Smalltalk. In Proceedings of the Conference on Object-Oriented Programming Systems, Languages and Applications, pages 18--26, 1988.


Call Graph Construction in Object-Oriented Languages - Grove, al. (1997)   (63 citations)  (Correct)

....performing interprocedural 13 optimizations building on the call graphs produced by the different construction algorithms. The base configuration represents an aggressive combination of intraprocedural and limited interprocedural optimizations which include: intraprocedural class analysis [Johnson 88, Chambers Ungar 90] hard wired class prediction for common messages (Cecil programs only) Deutsch Schiffman 84, Chambers Ungar 89] splitting [Chambers Ungar 89] class hierarchy analysis [Dean et al. 95] crossmodule inlining, static class prediction [Dean 96] closure optimizations ....

Ralph Johnson. TS: AN Optimizing Compiler for Smalltalk. In Proceedings OOPSLA '88, pages 18--26, November 1988. Published as ACM SIGPLAN Notices, volume 23, number 11.


The RTL System - Mcconnell, Roberts, Schoening (1990)   (Correct)

....it is impossible to generate long sequences of code that are uninterrupted by calls to unknown procedures and hence amenable to optimization. If Smalltalk is to rival traditional programming languages in speed, it is clear that it needs to be implemented differently. The Typed Smalltalk compiler [JGZ88] uses a type system to bind most procedure calls at compile time. It performs a number of optimizations on the resulting program, such as in line substitution of procedures. It is the in line substitution of primitives, which are written in the intermediate language described in the next chapter, ....

Ralph E. Johnson, Justin O. Graver, and Lawrence W. Zurawski. TS: An optimizing compiler for Smalltalk. In Proceedings of OOPSLA `88, Object-Oriented Programming Systems, Languages and Applications, pages 18--26, November 1988. printed as SIGPLAN Notices, 23(11).


Refactoring Object-Oriented Frameworks - Opdyke (1992)   (124 citations)  Self-citation (Johnson)   (Correct)

.... the Lisa Toolkit [57] and Smalltalk Model View Controller [48] More recently, several projects have been undertaken at the University of Illinois at Urbana Champaign to design frameworks; these include the Typed Smalltall (TS) optimizing compiler framework for code generation and optimization [60], the FOIBLE framework for visual programming [58] and the Choices object oriented operating sys tem. Choices, written in C , is more than just an operating system; it is really an operating system framework consisting of interlocking frameworks for file systems [77] virtual memory [103] ....

....In each newly defined subclass, the functions can be simplified by replacing the conditional statements with just the code segment for the condition corresponding to (implied by) the subclass. There are several examples of this type of restructuring that occurred in the Typed Smalltalk [60] project and the Choices operating system project; it was also useful in converting a program written in the C programming language to C . The Typed Smalltalk (TS) project is developing an optimizing compiler for a typed version of Smalltalk. In the TS compiler, instances of the FlowNode class, ....

Ralph E. Johnson, Justin O. Graver, and Lawrence W. Zurawski. TS: An optimizing compiler for Smalltalk. In Proceedings of OOPSLA '88, pages 18 26, November 1988. printed as SICPLAN Notices, 23(11).


A Type System for Smalltalk - Graver, Johnson (1990)   (34 citations)  Self-citation (Johnson Graver)   (Correct)

....of the subtype relation on equality of parameterized types, and ffl type safety, i.e. a variable s value always conforms to its type. Because the type system uses class information, it can be used for optimization. It has been implemented as part of the TS (Typed Smalltalk) optimizing compiler [JGZ88]. 2 Background Smalltalk [GR83] is a pure object oriented programming language in that everything, from integers to text windows to the execution state, is an object. In particular, classes are objects. Since everything is an object, the only operation needed in Smalltalk is message sending. ....

....presented here. A few primitives are inherently unsafe. These are primarily used by the debugger. Most of the primitives have simple types, however. 7 Conclusion Our type system for Smalltalk is type safe. It has been implemented in Smalltalk and used in the TS optimizing compiler for Smalltalk [JGZ88]. It has been able to solve most type checking problems in the standard Smalltalk 80 class hierarchy. Thus, it is correct, useful, and usable. Our type system is also unique. It differs from other type systems for object oriented programming languages by acknowledging that only implementation is ....

Ralph E. Johnson, Justin O. Graver, and Lawrence W. Zurawski. TS: An optimizing compiler for Smalltalk. In Proceedings of OOPSLA `88, pages 18--26, November 1988. printed as SIGPLAN Notices, 23(11).


Effective Interprocedural Optimization of Object-Oriented Languages - Grove (1998)   (5 citations)  (Correct)

No context found.

Ralph E. Johnson, Justin O. Graver, and Lawrence W. Zurawski. TS: An Optimizing Compiler for Smalltalk. In Proceedings OOPSLA '88, pages 18--26, November 1988. Published as ACM SIGPLAN Notices, volume 23, number 11.


Adaptive Online Context-Sensitive Inlining - Hazelwood, Grove (2003)   (6 citations)  (Correct)

No context found.

R. Johnson. TS: An optimizing compiler for Smalltalk. In Languages, and Applications, pages 18--26, 1988.


Adaptive Online Context-Sensitive Inlining - Hazelwood, Grove (2003)   (6 citations)  (Correct)

No context found.

R. Johnson. TS: An optimizing compiler for Smalltalk. In Languages, and Applications, pages 18--26, 1988.


The Lime Music Editor: a Diagram Editor Involving Complex.. - Blostein, Haken (1994)   (Correct)

No context found.

R. Johnson, J. Graver and L. Zurawski, `TS: An optimizing compiler for Smalltalk', Proc. ObjectOriented Systems, Languages, and Applications '88, SIGPLAN Notices, 23, (11), 18--26 (1988).


Interfaces and Specifications for the Smalltalk-80 Collection.. - Cook (1992)   (37 citations)  (Correct)

No context found.

R. Johnson, J. Graver and L. Zurawski. "TS: an optimizing compiler for Smalltalk." In Proc. of ACM Conf. on Object-Oriented Programming Systems, Languages and Applications, 1988.

First 50 documents

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC