David Chase - Academia.edu (original) (raw)

David Chase

Uploads

Papers by David Chase

Research paper thumbnail of 3. a Proposal for Garbage-collector-safe C Compilation Garbage Collection and C

Conservative garbage collectors are commonlyused in combination with conventional C programs. Emp... more Conservative garbage collectors are commonlyused in combination with conventional C programs. Empirically, this usually works well. However, there are no guarantees that this is safe in the presence of \improved" compiler optimization. We propose that C compilers provide a facility to suppress optimizations that are unsafe in the presence of conservative garbage collection. Such a facility can be added to an existing compiler at very minimal cost, provided the additional analysis is done in a machine-independent source-to-source prepass. Such a prepass may also check the source code for garbage-collector-safety. C programs normally allocate dynamic memory using malloc, and explicitly deallocate memory by calling free when it is no longer needed. This approach is simple to describe and relatively simple to implement. Both malloc and free can be implemented reasonably eeciently with fairly predictable execution time. However, the need for explicit deallocation often becomes cumbe...

Research paper thumbnail of The Fortress Language Specification Version 1.0

A method declaration in a trait declaration of an api might in clude anabstract modifier, indicat... more A method declaration in a trait declaration of an api might in clude anabstract modifier, indicating that an object of the traitdoes notinherit the definition of the method from that trait. See Chap ter 4 for a discussion of apis.

Research paper thumbnail of Type inference of generic type parameters in overloaded functions using type intervals and inference directions

Research paper thumbnail of Link-time and run-time error detection, and program instrumentation

Research paper thumbnail of Hybrid threads for multiplexing virtual machine

Research paper thumbnail of Using versioned pointers to facilitate reusing memory with a reduced need to reclaim objects through garbage collection

Research paper thumbnail of Fast dispatch predicate for overloaded functions with generic type hierarchies that lack contravariance

Research paper thumbnail of Dispatch predicate for overloaded functions using type intervals

Research paper thumbnail of Implementation of exception handling

Exception-handling is a feature found in one form or another in various lan-guages. Recent exampl... more Exception-handling is a feature found in one form or another in various lan-guages. Recent examples include Ada, Modula-2+, C++, Modula-3 and Eiffel. These languages all share the “termination model” of exception handling, where control transfers into the scope of the ...

Research paper thumbnail of The Fortress Language Specification

Research paper thumbnail of A Proposal for Garbage-Collector-Safe C Compilation

Conservative garbage collectors are commonlyused in combination with conventional C programs.Empi... more Conservative garbage collectors are commonlyused in combination with conventional C programs.Empirically, this usually works well. However, there are no guarantees that this is safe in thepresence of "improved" compiler optimization. We propose that C compilers provide a facility tosuppress optimizations that are unsafe in the presence of conservative garbage collection. Sucha facility can be added to an existing compiler at

Research paper thumbnail of Brief survey of garbage collection algorithms

Research paper thumbnail of The Fortress Language 10 Specification

Research paper thumbnail of Dynamic circular work-stealing deque

Proceedings of the 17th annual ACM symposium on Parallelism in algorithms and architectures - SPAA'05, 2005

Research paper thumbnail of Type checking modular multiple dispatch with parametric polymorphism and multiple inheritance

ACM SIGPLAN Notices, 2011

Research paper thumbnail of Fortress (Sun HPCS Language)

Encyclopedia of Parallel Computing, 2011

Research paper thumbnail of Implementation of exception handling

The Journal of C Language Translation, 1994

Exception-handling is a feature found in one form or another in various lan-guages. Recent exampl... more Exception-handling is a feature found in one form or another in various lan-guages. Recent examples include Ada, Modula-2+, C++, Modula-3 and Eiffel. These languages all share the “termination model” of exception handling, where control transfers into the scope of the ...

Research paper thumbnail of Garbage collection and other optimizations

Rice University, Houston, TX, 1988

Research paper thumbnail of Safety Considerations for Storage Allocation Optimizations

Research paper thumbnail of An improvement to bottom-up tree pattern matching

Proceedings of the 14th ACM SIGACT-SIGPLAN …, Jan 1, 1987

Research paper thumbnail of 3. a Proposal for Garbage-collector-safe C Compilation Garbage Collection and C

Conservative garbage collectors are commonlyused in combination with conventional C programs. Emp... more Conservative garbage collectors are commonlyused in combination with conventional C programs. Empirically, this usually works well. However, there are no guarantees that this is safe in the presence of \improved" compiler optimization. We propose that C compilers provide a facility to suppress optimizations that are unsafe in the presence of conservative garbage collection. Such a facility can be added to an existing compiler at very minimal cost, provided the additional analysis is done in a machine-independent source-to-source prepass. Such a prepass may also check the source code for garbage-collector-safety. C programs normally allocate dynamic memory using malloc, and explicitly deallocate memory by calling free when it is no longer needed. This approach is simple to describe and relatively simple to implement. Both malloc and free can be implemented reasonably eeciently with fairly predictable execution time. However, the need for explicit deallocation often becomes cumbe...

Research paper thumbnail of The Fortress Language Specification Version 1.0

A method declaration in a trait declaration of an api might in clude anabstract modifier, indicat... more A method declaration in a trait declaration of an api might in clude anabstract modifier, indicating that an object of the traitdoes notinherit the definition of the method from that trait. See Chap ter 4 for a discussion of apis.

Research paper thumbnail of Type inference of generic type parameters in overloaded functions using type intervals and inference directions

Research paper thumbnail of Link-time and run-time error detection, and program instrumentation

Research paper thumbnail of Hybrid threads for multiplexing virtual machine

Research paper thumbnail of Using versioned pointers to facilitate reusing memory with a reduced need to reclaim objects through garbage collection

Research paper thumbnail of Fast dispatch predicate for overloaded functions with generic type hierarchies that lack contravariance

Research paper thumbnail of Dispatch predicate for overloaded functions using type intervals

Research paper thumbnail of Implementation of exception handling

Exception-handling is a feature found in one form or another in various lan-guages. Recent exampl... more Exception-handling is a feature found in one form or another in various lan-guages. Recent examples include Ada, Modula-2+, C++, Modula-3 and Eiffel. These languages all share the “termination model” of exception handling, where control transfers into the scope of the ...

Research paper thumbnail of The Fortress Language Specification

Research paper thumbnail of A Proposal for Garbage-Collector-Safe C Compilation

Conservative garbage collectors are commonlyused in combination with conventional C programs.Empi... more Conservative garbage collectors are commonlyused in combination with conventional C programs.Empirically, this usually works well. However, there are no guarantees that this is safe in thepresence of "improved" compiler optimization. We propose that C compilers provide a facility tosuppress optimizations that are unsafe in the presence of conservative garbage collection. Sucha facility can be added to an existing compiler at

Research paper thumbnail of Brief survey of garbage collection algorithms

Research paper thumbnail of The Fortress Language 10 Specification

Research paper thumbnail of Dynamic circular work-stealing deque

Proceedings of the 17th annual ACM symposium on Parallelism in algorithms and architectures - SPAA'05, 2005

Research paper thumbnail of Type checking modular multiple dispatch with parametric polymorphism and multiple inheritance

ACM SIGPLAN Notices, 2011

Research paper thumbnail of Fortress (Sun HPCS Language)

Encyclopedia of Parallel Computing, 2011

Research paper thumbnail of Implementation of exception handling

The Journal of C Language Translation, 1994

Exception-handling is a feature found in one form or another in various lan-guages. Recent exampl... more Exception-handling is a feature found in one form or another in various lan-guages. Recent examples include Ada, Modula-2+, C++, Modula-3 and Eiffel. These languages all share the “termination model” of exception handling, where control transfers into the scope of the ...

Research paper thumbnail of Garbage collection and other optimizations

Rice University, Houston, TX, 1988

Research paper thumbnail of Safety Considerations for Storage Allocation Optimizations

Research paper thumbnail of An improvement to bottom-up tree pattern matching

Proceedings of the 14th ACM SIGACT-SIGPLAN …, Jan 1, 1987

Log In