ppxscal/embedding_network huggingface dataset:
How difficult is the transition from OOA to OOD? (panel session)
Authors: Hermann Kaindl
Venue: Addendum to the 2000 proceedings of the conference on Object-oriented programming, systems, languages, and applications (Addendum) (2000)

One of the claimed advantages of object-oriented (OO) development is that developers can use objects in a uniform modeling approach throughout the process. In particular, they can coherently apply the same notation for representing these objects and their relations in both analysis and design. Given this, the claims by many OO methodologists (see, e.g., [1, 5]) that the transition from OO analysis (OOA) to OO design (OOD) is easy and smooth may seem convincing. However, the contrasting view can be found in [2, 4] that it is actually difficult to go from OOA to OOD and, recognizing the differences between what is modeled in the analysis and design phases can lead to a more conscious development approach. In the light of such controversial views, it seems to be necessary to widely discuss this issue. The prospective panelists represent a wide spectrum of related views. So, there is some hope that this panel might more or less resolve this important issue. A consequence of resolving this issue might be a contribution to a better understanding of a paradox in the current software business: software is wanted faster and at the same time with higher quality than ever before. Does the view that the transition from OOA to OOD might be easy promise too much in the direction of quick solutions?
A simple java package for GUI-like interactivity
Authors: Elliot Koffman, Ursula Wolz
Venue: ACM SIGCSE Bulletin (2001)

This paper discusses the motivation for a simple package designed to incorporate user interactivity into a first course in computer science. The package enables novice programmers to build programs with GUI-like interactivity while maintaining good design principles. An advantage of this package is that it is easy to implement using the Swing class. Therefore, it can be used as a case study to illustrate Java features.
The future of programming
Authors: Anthony I. Wasserman, Steven Gutz
Venue: Communications of the ACM (1982)

The nature of programming is changing. These changes will accelerate as improved software development practices and more sophisticated development tools and environments are produced. This paper surveys the most likely changes in the programming task and in the nature of software over the short term, the medium term, and the long term. In the short term, the focus is on gains in programmer productivity through improved tools and integrated development environments. In the medium term, programmers will be able to take advantage of libraries of software components and to make use of packages that generate programs automatically for certain kinds of common systems. Over the longer term, the nature of programming will change even more significantly as programmers become able to describe desired functions in a nonprocedural way, perhaps through a set of rules or formal specification languages. As these changes occur, the job of the application programmer will become increasingly analysis-oriented and software developers will be able to attack a large number of application areas which could not previously be addressed effectively.
Secure data hiding in wavelet compressed fingerprint images
Authors: Nalini K. Ratha, Jonathan H. Connell, Ruud M. Bolle
Venue: Proceedings of the 2000 ACM workshops on Multimedia (2000)

With the rapid growth of the Internet, electronic commerce revenue now amounts to several billion US dollars. To avoid fraud and misuse, buyers and sellers desire more secure methods of authentication than today's userid and password combinations. Automated biometrics technology in general, and fingerprints in particular, provide an accurate and reliable authentication method. However, fingerprint-based authentication requires accessing fingerprint images scanned remotely at the user's workstation, a potentially weak point in the security system. Stored or synthetic fingerprint images might be fraudulently transmitted, even if the communication channel itself is encrypted. In this paper we describe an algorithm for secure data hiding in wavelet compressed fingerprint images to alleviate this problem. Assuming the image capture device is secure, then only the decompressor on the server can locate the embedded message and thereby validate the submitted image.
Recognizing Schubert Cells
Authors: Sergey Fomin, Andrei Zelevinsky
Venue: Journal of Algebraic Combinatorics: An International Journal (2000)

We address the problem of distinguishing between different Schubert cells using vanishing patterns of generalized Pl&uuml;cker coordinates.
Propagation of last-transition-time constraints in gate-level timing analysis
Authors: M. Kassab, E. Cerny, S. Aourid, T. Krodel
Venue: Proceedings of the conference on Design, automation and test in Europe (1998)

Waveform narrowing is an attractive framework for circuit delay verification as it can handle different delay models and component delay correlation efficiently. The method can give false negative results because it relies on local consistency techniques. We present two methods to reduce this pessimism: 1) global timing implications and necessary assignments, and 2) a case analysis procedure that finds a test vector that violates the timing check or proves that no violation is possible. Under floating-mode, global implications eliminate timing check violation without case analysis in the c1908 benchmark, while for a tighter requirement case analysis finds a test vector after only 5 backtracks.
A library to support a graphics-based object-first approach to CS 1
Authors: Kim B. Bruce, Andrea Danyluk, Thomas Murtagh
Venue: ACM SIGCSE Bulletin (2001)

In this paper we describe a library we have developed that supports an "OO-from-the-beginning" approach to CS 1. The use of real graphics "objects" and event-driven programming are important components of our approach. The design of interactive graphical programs helps students to both use objects and write methods early while designing and implementing interesting programs.
FORTRAN subroutines for time series data reduction
Authors: Roger A. MacGowan
Venue: Communications of the ACM (1964)

For several years the author has been concerned with time series data reduction of guided missile data derived from tracking, telemetry and static test instrumentation. The data, which is acquired from many sources and comes in a great variety of formats and coding systems, must commonly be manipulated in a number of general ways before the calculation of functions specific to guided missile analysis is possible. The costs of programming many special purpose data reduction programs and the development time consumed in preparing and checking out these programs have strongly indicated the need for independent, general-purpose computer program modules or subroutines for data reduction. The philosophy arrived at by the author, is almost identical with that described in a recent publication by Healy and Bogert, and in a note by Bennet, but these individual module specifications are concerned with continuous functions, whereas the referenced article deals with spectral analysis.
A practical method for constructing LR (k) processors
Authors: A. J. Korenjak
Venue: Communications of the ACM (1969)

A practical method for constructing LR(k) processors is developed. These processors are capable of recognizing and parsing an input during a single no-backup scan in a number of steps equal to the length of the input plus the number of steps in its derivation. The technique presented here is based on the original method described by Knuth, but decreases both the effort required to construct the processor and the size of the processor produced. This procedure involves partitioning the given grammar into a number of smaller parts. If an LR(k) processor can be constructed for each part (using Knuth's algorithm) and if certain conditions relating these individual processors are satisfied, then an LR(k) processor for the entire grammar can be constructed for them. Using this procedure, an LR(1) parser for ALGOL has been obtained.
Laviathan studies
Authors: Sydney C. Rome
Venue: Communications of the ACM (1961)

The Leviathan studies are investigations into how people operate in large social organizations. Examples of such groups are a large military command, a governmental agency like the U. S. Bureau of Internal Revenue, or an industrial combination like an international oil corporation.
Updating mean and variance estimates: an improved method
Authors: D. H. D. West
Venue: Communications of the ACM (1979)

A method of improved efficiency is given for updating the mean and variance of weighted sampled data when an additional data value is included in the set. Evidence is presented that the method is stable and at least as accurate as the best existing updating method.
Monotone Difference Approximations Of BV Solutions To Degenerate Convection-Diffusion Equations
Authors: Steinar Evje, Kenneth Hvistendahl Karlsen
Venue: SIAM Journal on Numerical Analysis (2000)

We consider consistent, conservative-form, monotone difference schemes for nonlinear convection-diffusion equations in one space dimension. Since we allow the diffusion term to be strongly degenerate, solutions can be discontinuous and, in general, are not uniquely determined by their data. Here we choose to work with weak solutions that belong to the BV (in space and time) class and, in addition, satisfy an entropy condition. A recent result of Wu and Yin [ Northeastern Math J., 5 (1989), pp. 395--422] states that these so-called BV entropy weak solutions are unique. The class of equations under consideration is very large and contains, to mention only a few, the heat equation, the porous medium equation, the two phase flow equation, and hyperbolic conservation laws. The difference schemes are shown to converge to the unique BV entropy weak solution of the problem. In view of the classical theory for monotone difference approximations of conservation laws, the main difficulty in obtaining a similar convergence theory in the present context is to show that the (strongly degenerate) discrete diffusion term is sufficiently smooth. We provide the necessary regularity estimates by deriving and carefully analyzing a linear difference equation satisfied by the numerical flux of the difference schemes. Finally, we make some concluding remarks about monotone difference schemes for multidimensional equations.
The dynamics of mass online marketplaces: a case study of an online auction
Authors: Jungpil Hahn
Venue: Proceedings of the SIGCHI conference on Human factors in computing systems (2001)

The Internet has dramatically changed how people sell and buy goods. In recent years we have seen the emergence of electronic marketplaces that leverage information technology to create more efficient markets such as online auctions to bring together buyers and sellers with greater effectiveness at a massive scale. Despite the growing interest and importance of such marketplaces, our understanding of how the design of the marketplace affects buyer and seller behavior at the individual level and the market effectiveness at the aggregate level is still quite limited. This paper presents a detailed case study of a currently operational massive scale online auction marketplace. The main focus is to gain initial insights into the effects of the design of the marketplace. The results of the study point to several important considerations and implications not only for the design of online marketplaces but also for the design of large-scale websites where effective locating of information is key to user success.
Automatic errorbounds for simple zeros of analytic functions
Authors: J. Rokne
Venue: Communications of the ACM (1973)

The Cauchy-Ostrowski theorem on convergence of Newton iterates for an analytic function in one variable is extended to include computational errors using complex interval arithmetic. Several numerical examples are given for polynomials with real and complex roots and one example for the Bessel function of the first kind.
An approach to test compaction for scan circuits that enhances at-speed testing
Authors: Irith Pomeranz, Sudhakar Reddy
Venue: Proceedings of the 38th annual Design Automation Conference (2001)

We propose a new approach to the generation to compact test sets for scan circuits. Compaction refers here to a reduction in the test application time. The proposed procedure generates an initial test set that is likely to have a low test application time. It then applies an existing static compaction procedure to this initial test set to further compact it. As a by-product, the proposed procedure also results in long primary input sequences, which are applied at-speed. This contributes to the detection of delay defects. We demonstrate through experimental results the advantages of this approach over earlier ones as a method for generating test sets with minimal test application time and long primary input sequences.
Intelligent profiling by example
Authors: Sybil Shearin, Henry Lieberman
Venue: Proceedings of the 6th international conference on Intelligent user interfaces (2001)

The Apt Decision agent learns user preferences in the domain of rental real estate by observing the user's critique of apartment features. Users provide a small number of criteria in the initial interaction, receive a display of sample apartments, and then react to any feature of any apartment independently, in any order. Users learn which features are important to them as they discover the details of specific apartments. The agent uses interactive learning techniques to build a profile of user preferences, which can then be saved and used in further retrievals. Because the user's actions in specifying preferences are also used by the agent to create a profile, the result is an agent that builds a profile without redundant or unnecessary effort on the user's part.
A Unified Model for Probabilistic Principal Surfaces
Authors: Kui-Yu Chang, J. Ghosh
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (2001)

Principal curves and surfaces are nonlinear generalizations of principal components and subspaces, respectively. They can provide insightful summary of high-dimensional data not typically attainable by classical linear methods. Solutions to several problems, such as proof of existence and convergence, faced by the original principal curve formulation have been proposed in the past few years. Nevertheless, these solutions are not generally extensible to principal surfaces, the mere computation of which presents a formidable obstacle. Consequently, relatively few studies of principal surfaces are available. Recently, we proposed the probabilistic principal surface (PPS) to address a number of issues associated with current principal surface algorithms. PPS uses a manifold oriented covariance noise model, based on the generative topographical mapping (GTM), which can be viewed as a parametric formulation of Kohonen's self-organizing map. Building on the PPS, we introduce a unified covariance model that implements PPS $\left( 01\right) $ by varying the clamping parameter $\alpha$. Then, we comprehensively evaluate the empirical performance (reconstruction error) of PPS, GTM, and the manifold-aligned GTM on three popular benchmark data sets. It is shown in two different comparisons that the PPS outperforms the GTM under identical parameter settings. Convergence of the PPS is found to be identical to that of the GTM and the computational overhead incurred by the PPS decreases to $40$ percent or less for more complex manifolds. These results show that the generalized PPS provides a flexible and effective way of obtaining principal surfaces.
Register Allocation for Banked Register File
Authors: Jinpyo Park, Je-Hyung Lee, Soo-Mook Moon
Venue: Proceedings of the ACM SIGPLAN workshop on Languages, compilers and tools for embedded systems (2001)

A banked register file is a register file partitioned into banks. A register in a banked register file is addressed with the register number in conjunction with the active bank number. A banked register file may be employed to reduce the number of bits for register operands in the instruction encoding at the cost of bank changes and inter-bank data transfers. Although a banked register file is introduced to provide sufficient registers and reduce memory traffic, it may on the other hand inflate code by unwanted bank hanges and excessive inter-bank data movements. In this context, code quality heavily depends on the register allocator that decides the location of each variable. This paper addresses a heuristic approach to register allocation for exploiting two register banks. It performs global register allocation with the primary bank registers, while reducing the register pressure by doing local register allocation with the secondary bank registers. Experimental results show that the proposed register allocator eliminates a significant amount of memory traffic while achieving smaller code size compared to an allocator that utilizes the primary bank only.
Single sided MPI implementations for SUN MPIr
Authors: S. Booth, E. Mourao
Venue: Proceedings of the 2000 ACM/IEEE conference on Supercomputing (CDROM) (2000)

This paper describes an implementation of generic MPI-2 single-sided communications for SUN-MPI. Our implementation is layered on top of point-to-point MPI communications and therefore can be adapted to other MPI implementations. The code is designed to co-exist with other MPI-2 single-sided implementations (for example, direct use of shared memory) providing a generic fall-back implementation for those communication paths where an optimized single-sided implementation is not available. MPI-2 single-sided communications require the transfer of data-type information as well as user data. We describe a type packing and caching mechanism used to optimize the transfer of data-type information. The performance of this implementation is measured in comparison to equivalent point-to-point operations and the shared memory implementation provided by SUN.
A low-redundancy approach to semi-concurrent error detection in data paths
Authors: A. Antola, V. Piuri, M. Sami
Venue: Proceedings of the conference on Design, automation and test in Europe (1998)

A high-level synthesis approach is proposed for design of semi-concurrently self-checking devices; attention is focussed on data path design. After identifying the reference architecture against which cost and performances should be evaluated, a simultaneous scheduling-and-allocation algorithm is presented, allowing resource sharing between nominal and checking data paths. The algorithm grants that the required checking periodicity is satisfied while minimizing additional costs in terms of functional units. Risk of error aliasing due to resource sharing is analyzed.
A fast and usually linear algorithm for global flow analysis (abstract only)
Authors: Susan L. Graham, Mark Wegman
Venue: Communications of the ACM (1975)

ible graphs is presented. The algorithm is shown to treat a very general class of function spaces. For a graph of e edges, the algorithm has a worst case time bound of O(e log e) function operations. It is also shown that in programming terms, the number of operations is proportional to e plus the number of exits from program loops. Consequently a restriction to one-entry one-exit control structures guarantees linearity. The algorithm can be extended to yet larger classes of function spaces and graphs by relaxing the time bound. Examples are given of code improvement problems which can be solved using the algorithm.
An intelligent neural network programming system (NNPS)
Authors: Tao Li, XiaoJie Liu
Venue: ACM SIGPLAN Notices (2000)

A neural network programming system based on parallel neural information processing has been presented. With the neural network programming system built upon a 100M local computer network, the system has thus provided users high speed, general purpose and large scale neural network application development platforms.
Design-for-testability for synchronous sequential circuits using locally available lines
Authors: I. Pomeranz, S. M. Reddy
Venue: Proceedings of the conference on Design, automation and test in Europe (1998)

We propose a non-scan design-for-testability (DFT) method for synchronous sequential circuits. The proposed method controls the value of a next state variable Y by driving it from the complement of its next state function Y' or from an adjacent next state function Y1. Thus, the method relies on lines available locally to drive the inserted DFT logic, and does not require routing of primary inputs or primary outputs to or from the DFT logic. The method is used for enhancing circuit testability and for synchronizing unsynchronizable circuits.
Design rules based on analyses of human error
Authors: Donald A. Norman
Venue: Communications of the ACM (1983)

By analyzing the classes of errors that people make with systems, it is possible to develop principles of system design that minimize both the occurrence of error and the effects. This paper demonstrates some of these principles through the analysis of one class of errors: slips of action. Slips are defined to be situations in which the user's intention was proper, but the results did not conform to that intention. Many properties of existing systems are conducive to slips; from the classification of these errors, some procedures to minimize the occurrence of slips are developed.
Dynamic memory repacking
Authors: E. Balkovich, W. Chiu, L. Presser, R. Wood
Venue: Communications of the ACM (1974)

A probabilistic model of a multiprogramming system is exercised in order to determine the conditions under which the dynamic repacking of main memory is beneficial. An expression is derived for the maximum interference that a repacking process may introduce before the original performance of the system is degraded. Alternative approaches to repacking are discussed, and the operating conditions that lead to improved system throughput through repacking are delineated.
SHARE information available to nonmembers
Authors: Bernard A. Galler
Venue: Communications of the ACM (1962)

It is unfortunate that almost all of the presently used algebraic languages do not provide the capability of linear algebra. Operations such as the inner product of vectors, the product of two matrices, and the multiplication of a matrix by a scaler must inevitably be written out in detail in terms of the individual components. The reasons usually given for avoiding linear algebra in these languages are (1) the difficulties which would arise in scanning linear algebraic expressions, and (2) the uncertainty involved as to the amount of temporary storage needed during the evaluation of linear algebraic expressions when the program is executed. The purpose of this paper is to show how these two types of difficulties can be overcome. Although suggestions have been made for even further increasing the general capability of ALGOL such as including the ability to form a matrix from a collection of vectors, we shall be content here to consider the ordinary operations of linear algebra. Even if this much becomes available in algebraic languages, considerable progress will have been made. The following remarks constitute a suggestion for the addition to ALGOL of linear algebraic expressions.