The C programminglanguage was devised in liie early 1970s as a system implementationlanguage for the nascent Unix operating system. Derived from the typeless language BCPL, il evolved a type structure;created on a t...
详细信息
ISBN:
(纸本)0897915704
The C programminglanguage was devised in liie early 1970s as a system implementationlanguage for the nascent Unix operating system. Derived from the typeless language BCPL, il evolved a type structure;created on a tiny machine as 3 tool 10 improve a meager programming environment, it has becomc one of the dominant languages of today. This paper studies its evolution.
The Icon programminglanguage, which was conceived in 1977, was strongly influenced by the earlier SNOBOL languages and the subsequent SLS. This paper concentrates primarily on the early development of Icon, but also ...
详细信息
ISBN:
(纸本)0897915704
The Icon programminglanguage, which was conceived in 1977, was strongly influenced by the earlier SNOBOL languages and the subsequent SLS. This paper concentrates primarily on the early development of Icon, but also discusses subsequent versions. The motivation, design philosophy, and environmental factors that shaped Icon are emphasized in this paper.
We describe Charm++, an object oriented portable parallel programminglanguage based on C++. Its design philosophy, implementation, sample applications and their performance on various parallel machines are described....
详细信息
The conference materials contain 33 papers. The topics covered include experience with functional programming applications, theory and implementation of types, storage reclamation, semantics analysis of imperative ext...
详细信息
ISBN:
(纸本)089791595X
The conference materials contain 33 papers. The topics covered include experience with functional programming applications, theory and implementation of types, storage reclamation, semantics analysis of imperative extensions, compiling and performance evaluation, languagedesign, compiler optimization, static analysis, functional algorithms and partial evaluation.
Pascal was defined in 1970 and, after a slow start, becane one of the most widely used languages n introductoiy programming courses. This a/tide first summarises the events leading to Pascal's design and implement...
详细信息
ISBN:
(纸本)0897915704
Pascal was defined in 1970 and, after a slow start, becane one of the most widely used languages n introductoiy programming courses. This a/tide first summarises the events leading to Pascal's design and implementation, and then proceeds with a discussion of some of the anguage's merits and deficiencies. In the last part, developments that followed its release are recounted. Its influence chiefly derived from its being a vehicle for structured programming and a basis for further development of languages and for experiments in program verification.
We describe the implementation of a type checker for the functional programminglanguage Haskell that supports the use of type classes. This extends the type system of ML to support overloading (ad-hoc polymorphism) a...
详细信息
ISBN:
(纸本)9780897915984
We describe the implementation of a type checker for the functional programminglanguage Haskell that supports the use of type classes. This extends the type system of ML to support overloading (ad-hoc polymorphism) and can be used to implement features such as equality types and numeric overloading in a simple and general way, The theory of type classes is well understood, but the practical issues involved in the implementation of such systems have not received a great deal of attention. In addition to the basic type checking algorithm, an implementation of type classes also requires some form of program transformation. In all current Haskell compilers this takes the form of dictionary conversion, using functions as hidden parameters to overloaded values. We present efficient techniques for type checking and dictionary conversion. A number of optimizations and extensions to the basic type class system are also described.
Relational programming is a generalization of functional programming that includes aspects of logic programming. We describe a relational language, Drusilla, that retains the lazy, polymorphic and higher-order aspects...
详细信息
ISBN:
(纸本)089791595X
Relational programming is a generalization of functional programming that includes aspects of logic programming. We describe a relational language, Drusilla, that retains the lazy, polymorphic and higher-order aspects of functional languages and the flexible handling of non-determinism and search based computation of logic languages. As a result it offers certain economy of expression not found in functional or logic programming. However a complex implementation, using a combination of polymorphic type inference and automatic program transformation to select appropriate representations, is needed to support this language.
Re-use of synchronization code in concurrent 00-languages has been considered difficult due to inheritance anomaly, which we minimize with our new proposal. designed with high practicality in mind, we propose language...
详细信息
We present a programminglanguage with first-class timing constructs, whose semantics is based on time-constrained relationships between observable events. Since a system specification postulates timing relationships ...
详细信息
ISBN:
(纸本)9780897915984
We present a programminglanguage with first-class timing constructs, whose semantics is based on time-constrained relationships between observable events. Since a system specification postulates timing relationships between events, realizing the specification in a program becomes a more straightforward process. Using these constraints, as well as those imposed by data and control flow properties, our objective is to transform the code so that its worst-case execution time is consistent with its real-time requirements. To accomplish this goal we first translate an event-based source program into intermediate code, in which the timing constraints are imposed on the code itself, and then use a compilation technique which synthesizes feasible code from the original source program.
This paper presents the design and implementation of a `quasi real-time' garbage collector for Concurrent Caml Light, an implementation of ML with threads. This two-generation system combines a fast, asynchronous ...
详细信息
ISBN:
(纸本)0897915607
This paper presents the design and implementation of a `quasi real-time' garbage collector for Concurrent Caml Light, an implementation of ML with threads. This two-generation system combines a fast, asynchronous copying collector on the young generation with a non-disruptive concurrent marking collector on the old generation. This design crucially relies on the ML compile-time distinction between mutable and immutable objects.
暂无评论