Results 1 -
5 of
5
The problem of teaching object-oriented programming, Part I: Languages
, 1999
"... Object-oriented programming has, in recent years, become the most influential programming paradigm. It is widely ised in education and industry... ..."
Abstract
-
Cited by 23 (2 self)
- Add to MetaCart
Object-oriented programming has, in recent years, become the most influential programming paradigm. It is widely ised in education and industry...
The Blue Language
, 1999
"... This paper has been published as: Klling, M., "The Blue Language," Journal of Object-Oriented Programming, 11(10): ??, 1999. ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
This paper has been published as: Klling, M., "The Blue Language," Journal of Object-Oriented Programming, 11(10): ??, 1999.
Comparing Two Garbage Collectors for C++
, 1992
"... Our research is concerned with compiler-independent, tag-free garbage collection for the C++ programming language. This paper presents a mark-and-sweep collector, and explains how it ameliorates shortcomings of a previous copy collector. The new collector, like the old, uses C++'s facilities for cre ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Our research is concerned with compiler-independent, tag-free garbage collection for the C++ programming language. This paper presents a mark-and-sweep collector, and explains how it ameliorates shortcomings of a previous copy collector. The new collector, like the old, uses C++'s facilities for creating abstract data types to define a tracked reference type, called roots, at the level of the application program. A programmer wishing to utilize the garbage collection service uses these roots in place of normal, raw pointers. We present a detailed study of the cost of using roots, as compared to both normal pointers and reference counted pointers, in terms of instruction counts. We examine the efficiency of a small C++ application using roots, reference counting, manual reclamation, and conservative collection. Coding the application to use garbage collection, and analyzing the resulting efficiency, helped us identify a number of memory leaks and inefficiencies in the original, m...
C∀, a Study in Evolutionary Design in Programming Languages
, 2004
"... New programming languages appear constantly. Many of them are based on existing ones but differ sufficiently so they are incompatible (e.g., C/C++ and Java). Building on the C8 language (Ditchfield [47] and Bilson [16]), this thesis continues the C8 "evolutionary" approach to programming language de ..."
Abstract
- Add to MetaCart
New programming languages appear constantly. Many of them are based on existing ones but differ sufficiently so they are incompatible (e.g., C/C++ and Java). Building on the C8 language (Ditchfield [47] and Bilson [16]), this thesis continues the C8 "evolutionary" approach to programming language design based upon the very successful C programming language, preserving its syntax and semantics while extending it with features that considerably enhance its expressiveness. The evolutionary approach allows for the introduction of powerful abstraction mechanisms with minimal disruption to legacy code, truly "making the future safe for the past" [20]...

