Catálogo de publicaciones - revistas

Compartir en
redes sociales


ACM Computing Surveys (CSUR)

Resumen/Descripción – provisto por la editorial en inglés
A journal of the Association for Computing Machinery (ACM), which publishes surveys, tutorials, and special reports on all areas of computing research. Volumes are published yearly in four issues appearing in March, June, September, and December.
Palabras clave – provistas por la editorial

No disponibles.

Disponibilidad
Institución detectada Período Navegá Descargá Solicitá
No detectada desde mar. 1969 / hasta dic. 2023 ACM Digital Library

Información

Tipo de recurso:

revistas

ISSN impreso

0360-0300

ISSN electrónico

1557-7341

Editor responsable

Association for Computing Machinery (ACM)

País de edición

Estados Unidos

Fecha de publicación

Tabla de contenidos

Enhanced operational semantics

Pierpaolo Degano; Corrado Priami

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 352-354

Shape in computing

C. Barry Jay

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 355-357

Type inference for objects

Jens Palsberg

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 358-359

Rules and strategies for transforming functional and logic programs

Alberto Pettorossi; Maurizio Proietti

<jats:p>We present an overview of the program transformation methodology, focusing our attention on the so-called “rules + strategies” approach in the case of functional and logic programs. The paper is intended to offer an introduction to the subject. The various techniques we present are illustrated via simple examples.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 360-414

Software reuse

William Frakes; Carol Terry

<jats:p>As organizations implement systematic software reuse programs to improve productivity and quality, they must be able to measure their progress and identify the most effective reuse strategies. This is done with reuse metrics and models. In this article we survey metrics and models of software reuse and reusability, and provide a classification structure that will help users select them. Six types of metrics and models are reviewed: cost-benefit models, maturity assessment models, amount of reuse metrics, failure modes models, reusability assessment models, and reuse library metrics.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 415-435

On the notion of inheritance

Antero Taivalsaari

<jats:p> One of the most intriguing—and at the same time most problematic—notions in object-oriented programing is <jats:italic>inheritance</jats:italic> . Inheritance is commonly regarded as the feature that distinguishes object-oriented programming from other modern programming paradigms, but researchers rarely agree on its meaning and usage. Yet inheritance of often hailed as a solution to many problems hampering software development, and many of the alleged benefits of object-oriented programming, such as improved conceptual modeling and reusability, are largely credited to it. This article aims at a comprehensive understanding of inheritance, examining its usage, surveying its varieties, and presenting a simple taxonomy of mechanisms that can be seen as underlying different inheritance models. </jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 438-479

An introduction to partial evaluation

Neil D. Jones

<jats:p> Partial evaluation provides a unifying paradigm for a broad spectrum of work in program optimization compiling interpretation and the generation of automatic program generators [Bjørner et al. 1987; Ershov 1992; and Jones et al. 1993]. It is a program optimization technique, perhaps better called <jats:italic>program specialization</jats:italic> , closely related to but different from Jørring and Scherlis' <jats:italic>staging transformations</jats:italic> [1986]. It emphasizes, in comparison with Burstall and Darlington [1977] and Jørring and Scherlis [1986] and other program transformation work, <jats:italic>full automation</jats:italic> and the generation of <jats:italic>program generators</jats:italic> as well as transforming single programs. Much partial evaluation work to date has concerned automatic compiler generation from an interpretive definition of programming language, but it also has important applications to scientific computing, logic programming, metaprogramming, and expert systems; some pointers are given later. </jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 480-503

Error detection methods

Joseph A. Gallian

<jats:p>The use of check digits with identification numbers for error detection is now standard practice. Notable exceptions such as social security numbers, telephone numbers and serial numbers on currency predate computers. Despite their ubiquity and utility, few people are knowledgeable about the myriad of check digit schemes in use by businesses. In this article we survey many of these schemes. Among them are three that have not been described in journal articles previously.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 504-517

Area and performance tradeoffs in floating-point divide and square-root implementations

Peter Soderquist; Miriam Leeser

<jats:p>Floating-point divide and square-root operations are essential to many scientific and engineering applications, and are required in all computer systems that support the IEEE floating-point standard. Yet many current microprocessors provide only weak support for these operations. The latency and throughput of division are typically far inferior to those of floating-point addition and multiplication, and square-root performance is often even lower. This article argues the case for high-performance division and square root. It also explains the algorithms and implementations of the primary techniques, subtractive and multiplicative methods, employed in microprocessor floating-point units with their associated area/performance tradeoffs. Case studies of representative floating-point unit configurations are presented, supported by simulation results using a carefully selected benchmark, Givens rotation, to show the dynamic performance impact of the various implementation alternatives. The topology of the implementation is found to be an important performance factor. Multiplicative algorithms, such as the Newton-Raphson method and Goldschmidt's algorithm, can achieve low latencies. However, these implementations serialize multiply, divide, and square root operations through a single pipeline, which can lead to low throughput. While this hardware sharing yields low size requirements for baseline implementations, lower-latency versions require many times more area. For these reasons, multiplicative implementations are best suited to cases where subtractive methods are precluded by area constraints, and modest performance on divide and square root operations is tolerable. Subtractive algorithms, exemplified by radix-4 SRT and radix-16 SRT, can be made to execute in parallel with other floating-point operations.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 518-564

Undirected behavior without unbounded search

Ronald J. Brachman; Hector J. Levesque

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 1