bluuebunny/crossref_metadata_2025 huggingface dataset:
Biopython
Authors: Chapman Brad , Chang Jeffrey
Published: January 2007

The Biopython project was formed in August 1999 as a collaboration to collect and produce open source bioinformatics tools written in Python, an object-oriented scripting language. It is modeled on the highly successful Bioperl project, but has the goal of making libraries available for people doing computations in Python. The philosophy of all the Bio* projects is that part of bioinformaticists' work involves software development. In order to prevent repeated efforts we believe that the field can be advanced more quickly if libraries that perform common programming functions are available. Thus, we hope to create a central source for high-quality bioinformatics tools that researchers can use.As an open source project, Biopython can be downloaded for free from the web site at
http://www.biopython.org
. Biopython libraries are currently under heavy development. This paper describes the current state of available Biopython tools, shows examples of their use in common bioinformatics problems, and describes plans for future development.
A rapid development process with UML
Authors: Armano Giuliano , Marchesi Michele
Published: January 2007

Since "design-oriented" life-cycles came to their maturity, dramatic changes have been introduced as far as programming tools and computer hardware are concerned. Such changes made it possible to develop applications focusing on refactoring rather than on analysis and design. The underlying hypothesis is that by adopting suitable tools and target languages, refactoring would possibly cost less than the overhead introduced by modern A&D techniques. Recently, extreme programming has been proposed as an alternative to a "design-oriented" life-cycle.In this paper we describe a software application developed using a software life-cycle that basically follows the guidelines suggested by extreme programming. Such an approach requires highly expressive programming languages and powerful CASE tools. UML has been selected as the underlying modeling language throughout the whole process, for it incorporates well-known diagrams for describing a software application from different perspectives. Smalltalk has been selected as target language, as it allows fast prototyping and early delivery. We claim that, for small and medium-sized projects, a life-cycle based on refactoring and supported by suitable languages and tools allows team productivity to be greatly enhanced.
A small OpenMath type system
Authors: Davenport James H.
Published: January 2007

This paper describes the "light-weight" Small Type System of OpenMath. It is based on various discussion with the OpenMath Consortium, and notably with the NAG team. Section 7 lists the open issues for debate.
Pushing politely
Authors: Davison Brian D. , Liberatore Vincenzo
Published: January 2007

The rapid growth of traffic on the World-Wide Web results in heavier loads on networks and servers and in increased latency experienced while retrieving web documents. This paper presents a framework that exploits idle periods to satisfy future HTTP requests speculatively and opportunistically. Our proposal differs from previous schemes in that speculative dissemination always gives precedence to on-demand traffic, uses ranged requests for improved performance, and can be implemented over a connectionless transport. The protocol uses bounded and little server state even as the workload was increased and it is resistant to erroneous estimates of available bandwidth. Substantial latency improvements are reported over pure on-demand strategies.
Characterizing Web user sessions
Authors: Arlitt Martin
Published: January 2007

This paper presents a detailed characterization of user sessions to the 1998 World Cup Web site. This study analyzes data that was collected from the World Cup site over a three month period. During this time the site received 1.35 billion requests from 2.8 million distinct clients. This study focuses on numerous user session characteristics, including distributions for the number of requests per session, number of pages requested per session, session length and inter-session times. This paper concludes with a discussion of how these characteristics can be utilized in improving Web server performance in terms of the end-user experience.
Hensel construction of F(x, u
1
, ..., x
l
) l ≥ 2 at a singular point and its applications
Authors: Sasaki Tateaki , Inaba Daiju
Published: January 2007

In 1993, Sasaki and Kako proposed a Hensel-like construction of
F
(
x,
u
1
,¡­,

u
l

),
l
¡Ý 2, at a singular point where the conventional
generalized Hensel construction breaks down. In this paper, we
first extend Sasaki-Kako's method so as to apply to polynomials
with vanishing leading coefficients. Then, we investigate a special
case that the initial factors are polynomials. We prove that the
multivariate polynomial can be decomposed at any singular point
into factors which are polynomials in a main variable with
coefficients being (infinite) series of rational functions such
that
¡Æ

k
=0

¡Þ
[

N
k

(
u
1
¡­,

u
l

)/

D
k

(
u
1
,¡­,

u
l

)].
Here,

N
k

and

D
k

are homogeneous
polynomials in
u
1
-
s
1
,¡­,

u
l
-
s
l

and tdeg(

N
k

) -
tdeg(

D
k

) =
k,
where
(
s
1
,¡­,

s
l

) is the
expansion point and
tdeg
denotes the total-degree. The
extended Hensel construction can be used to factorization of
multivariate polynomials having a singular point at the origin.
After performing the extended Hensel construction at the origin, we
search for the smallest subsets of Hensel factors such that the
product of the members of each subset contains no rational
function. Then, we obtain the factorization in
K
{
u
1
,¡­,

u
l

}[
x
], with
K
a number field. Next, we search for the
smallest subsets such that the product of the members of each
subset contains no infinite series. Then, we obtain the
factorization in
K
[
x,
u
1
,¡­,

u
l

], without
employing the so-called nonzero substitution.
Resistance scaling and random walk dimensions for finitely ramified Sierpinski carpets
Authors: Schulzky Christian , Franz Astrid , Hoffmann Karl Heinz
Published: January 2007

We present a new algorithm to calculate the random walk dimension
of finitely ramified Sierpinski carpets. The fractal structure is
interpreted as a resistor network for which the resistance scaling
exponent is calculated using Mathematica. A fractal form of the
Einstein relation, which connects diffusion with conductivity, is
used to give a numerical value for the random walk dimension.
Algebraic invariants of graphs; a study based on computer exploration
Authors: Thiéry Nicolas M.
Published: January 2007

We consider the ring J
n
of polynomial invariants over weighted graphs on n vertices. Our primary interest is the use of this ring to define and explore algebraic versions of isomorphism problems of graphs, such as Ulam's reconstruction conjecture.

There is a huge body of literature on invariant theory which provides both general results and algorithms. However, there is a combinatorial explosion in the computations involved and, to our knowledge, the ring J
n
has only been completely described for n ≤ 4.

This led us to study the ring J
n
in its own right. We used intensive computer exploration for small n, and developed PerMuVAR, a library for MuPAD, for computing in invariant rings of permutation groups.

We present general properties of the ring J
n
, as well as results obtained by computer exploration for small n, including the construction of a medium sized generating set for J
n
. We address several conjectures suggested by those results (low degree system of parameters, unimodality), for J
n
as well as for more general invariant rings. We also show that some particular sets are not generating, disproving a conjecture of Pouzet related to reconstruction, as well as a lemma of Grigoriev on the invariant ring over digraphs. We finally provide a very simple minimal generating set of the field of invariants.
Some APL2 programming examples using nested arrays
Authors: Benkard J. P.
Published: January 2007

Three extracts from a program currently in use are shown and discussed. The program reads seven files, formats the data as nested arrays, and prepares several reports and files. The examples are taken, respectively, from the input, process, and output sections of the program. In each section nested arrays are useful. N-WISE REDUCTION is used as the inverse of SCAN to simplify a backward scheduling algorithm. The flexible formatting of nested array output makes optimum use of print columns. An experimental depth operator described in the references is very useful.
Computer vision and its application to APL
Authors: Feldberg I.
Published: January 2007

Computer Vision refers to the application of human vision techniques to a computer, simply put, teaching the computer to see. This branch of computer science is well rooted in several other branches, including: image processing, artificial intelligence, and computational geometry. From these fields, as well as its own, come many interesting algorithms that can be used to form computer vision systems. These systems have been used in the past to perform such operations as inspecting tools on an assembly line and maneuvering a vehicle without human intervention. These tasks require two very different types of computer vision systems. In the first, a very limited domain can be covered, that is, the computer has to recognize only a few things (e.g. tool, belt, background). In the second, the computer has to be much smarter. It must recognize many diverse things (ground, walls, sky, obstacles).

In this project, a medium-scale computer vision task was chosen. We were to take an image of a mandrill (the famous one) and create algorithms to accurately label parts of the image. After some thought, APL was chosen as the language to program the task in. Not only was APL easy to work with, but it proved to be a creative factor. In APL, we were able to use array techniques that were simply unavailable in any other language.
APL and finite elements for solving convection-diffusion problems, with examples from gas bearing design
Authors: Hendriks F.
Published: January 2007

The increasing popularity of finite element techniques to solve fluid flow problems has been due, in large part, to its geometric flexibility and adaptability. APL shares that property. Therefore, it is a natural companion to finite element modelling. The closeness of control that APL allows during algorithm and program development is especially welcome during the pre-processing stages of the solution of field problems, in particular during grid generation. This leads to very reasonable “door-to-door” solution times, especially for problems that occur in a R&D environment, where a large percentage of the time is spent formulating, changing and maintaining code.

Using examples from engineering practice, the adaptability of APL is illustrated in gas bearing design, as applied to magnetic sliders in hard disk files and laser mirror scanners in electrophotographic printers. APL was also used to teach finite element techniques and grid generation. It proved effective in affording a more immediate view of the key steps of finite element modelling, such as assembly of the stiffness matrix, and the effect of node numbering on the bandwidth of the sparse linear system.
ICONER: A TOOL FOR EVALUATING ICONS
Authors: Eisen Hendrika Alice
Published: January 2007

Icons are becoming a popular component in the design of user interfaces. Finding icons which are most meaningful and clear to end-users poses a challenge to designers. To help with this challenge, "Iconer" was created as a tool that interface designers can use to quickly test icons with end-users.
COMPUTERIZED PERFORMANCE MONITORING AND PERFORMANCE APPRAISAL
Authors: Fenner Deborah B. , Lerch F. Javier , Kulik Carol T.
Published: January 2007

Industrial and governmental employers are increasingly using computerized performance monitoring (CPM) as a tool for evaluating employees' performance. It is estimated that six to seven million employees are currently being monitored by computers and that the number of firms considering such systems is growing (OTA, 1987).
TANGO: A FRAMEWORK AND SYSTEM FOR ALGORITHM ANIMATION
Authors: Stasko John T.
Published: January 2007

Algorithm animation is the process of abstracting the data, operations, and semantics of computer programs, and then creating animated graphical views of those abstractions. Although a handful of algorithm animation systems have been developed in recent years, relatively little work has been done on the theoretical foundations of such systems. In this work we develop a conceptual framework with formal models and precise semantics for algorithm animation. The framework contains facilities for defining operations in an algorithm, designing animations, and mapping the algorithm operations to their corresponding animations. Concurrently, we develop an algorithm animation system called TANGO (Transition-based A Nimation GeveratiOn) and a WYSIWYG demonstrational animation design tool called DANCE (Demonstrational A Nimation CrEation) that are both based upon the framework.
Choices in server-side programming
Authors: Brown Robert G. , Hahn Willi
Published: January 2007

One of the fastest growing and changing fields for software developers is in writing applications that are used across the "World Wide Web", which is in turn a client-server system that runs on the Internet. Servers, known by name, can be accessed over the Internet, and a protocol, known as HTTP (Hypertext Transfer Protocol) is used to send requests to servers for text, images (still and moving), audio, and other information. A very large amount of business will be conducted this way, now and in the future, having grown from almost nothing only 5 years ago. Application development on the Web is largely a matter of writing programs that are executed by the server, and we're going to focus our attention on two programming and operating environments that can be used to deliver server-side software.We would like to show how APL can be used to develop programs that run on the server, and we will contrast it with another means of developing and delivering server-side programs. It is not our goal to deliver any judgment about whether or not one system is "better" than the other (we believe that any such statement would be simplistic to the point of being misleading); we intend only to share the results of our experience, help the reader understand what technologies that are available, and assist in making an informed choice if participation in a project of this nature is part of what the reader does.
Regions
Authors: Chamberlain Bradford L. , Lewis E. Christopher , Lin Calvin , Snyder Lawrence
Published: January 2007

Most array languages, including Fortran 90, Matlab, and APL, provide support for referencing arrays by extending the traditional array subscripting construct found in scalar languages. We present an alternative to subscripting that exploits the concept of
regions
---an index set representation that can be named, manipulated with high-level operators, and syntactically separated from array references. This paper develops the concept of region-based programming and describes its benefits in the context of an idealized array language called
RL.
We show that regions simplify programming, reduce the likelihood of errors, and enable code reuse. Furthermore, we describe how regions accentuate the locality of array expressions and how this locality is important when targeting parallel computers. We also show how the concepts of region-based programming have been used in ZPL, a fully-implemented practical parallel programming language in use by scientists and engineers. In addition, we contrast region-based programming with the array reference constructs of other array languages.
Compiling document collections from the Internet
Authors: Kluev V.
Published: January 2007

Presently domain specific search engines are becoming popular because they offer greater accuracy, when compared to general purpose search engines. In this study, a method for collecting domain specific documents from the net was developed for the purpose of improving search results. The main thrust of our approach is to use several metrics to estimate the relevance of every automatically discovered document by a crawler regarding a topic of interest. This type of search resulted in two important findings. First, the time required for manual analysis of document content by the crawler was significantly reduced; second, the content quality of selected documents was improved. These results suggest that the rough estimation of precision and recall calculated in this study offer great promise.
Review of
Authors: Willoughby T. C.
Published: January 2007

The goal of this study was to compare systematically the multiple measures of research output, both objectively and subjectively, in order to identify those which are effective for evaluation of research professors. The study took place at the University of Missouri where a sample of 86 "hard" science professors pursuing funded research in 23 departments was evaluated.
Job satisfaction of data processing personnel
Authors: Woodruff Charles K.
Published: January 2007

Organizations by their very nature are human systems. Although an organization may be described and evaluated by its structural and task properties, effective functioning of the organization is contingent upon the action and interaction of the organization's members. Resultant job attitudes and job behaviors are a function of the behavioral demands of the task situation as well as the relevant characteristics of the individual himself. The most widely discussed and studied job attitudes come under the rubric of job satisfaction.
Adaptive man/computer interfaces
Authors: Feeney William R. , Hood John
Published: January 2007

The experiments and methodology to be talked about here are intended to aid the systems analyst in the task of designing user interface modules for business applications and other information systems. Other work has been done on how best to design user interface dialogues and soft-ware modules for specific applications, e.g. airline reservation systems (Martin, 1973) and a police system (Bockelman, 1972), But, as in these cases, the work was limited to a specific application.We hope that this present on-going effort will provide insights into the computer user for systems analysts working with a wide variety of applications. Further, it is hoped that these insights will include understanding that psychological mechanisms the users employ in their interaction with a computer. A whole new level of understanding of the user will be required for this.
Computing personnel turnover
Authors: Willoughby Theodore C.
Published: January 2007

Until 1970 most observers believed that one of the most critical MIS personnel problems was turnover. Published estimates of annual turnover of systems professionals ranged up to 35%. The individual company figures seen by the author ranged from 15% to 35% with the majority about 20%. Is this very high? A comparison with similar industrial workers brings the MIS trunover situation into perspective. Some of the distinctive aspects of MIS personnel are that they are relatively young, averaging under 30 years of age, have had un opportunity for relatively short years of service, are in an exempt managerial status, are in larger companies, and are more often men than women.
The consultant as collaborator
Authors: Stager Susan
Published: January 2007

Many of us who are employed as consultants at college and university computing centers have had little or no formal training in consultation. This is generally true of individuals employed as consultants in any rapidly expanding field. Employers in these fields feel fortunate if they can find and hire technical experts, and only dream of hiring individuals with both technical and consultation skills. There is another thing many of us who are employed as computer consultants at institutions of higher education have in common with technical experts in other fields: We erroneously assume that we are consultants because our job description says so. Successful consulting with users requires more than technical skills. A knowledge of the consulting process also contributes to our success with users.
Dynamic multi-path routing
Authors: Su Xun , de Veciana Gustavo
Published: January 2007

In this paper we study the dynamic multi-path routing problem. We focus on an operating regime where traffic flows arrive at and depart from the network in a bursty fashion, and where the delays involved in link state advertisement may lead to "synchronization" effects that adversely impact the performance of dynamic single-path routing schemes.We start by analyzing a simple network of parallel links, where the goal is to minimize the average increase in network congestion on the time scale of link state advertisements. We consider an asymptotic regime leading to an optimization problem permitting closed-form analysis of the number of links over which dynamic multi-path routing should be conducted. Based on our analytical result we examine three types of dynamic routing schemes, and identify a robust policy,
i.e.,
routing the traffic to a set of links with loads within a factor of the least loaded, that exhibits robust performance. We then propose a similar policy for mesh networks and show by simulation some of its desirable properties. The main results suggest that our proposal would provide significant performance improvement for high speed networks carrying bursty traffic flows.
Analysis and implementation of software rejuvenation in cluster systems
Authors: Vaidyanathan Kalyanaraman , Harper Richard E. , Hunter Steven W. , Trivedi Kishor S.
Published: January 2007

Several recent studies have reported the phenomenon of "software aging", one in which the state of a software system degrades with time. This may eventually lead to performance degradation of the software or crash/hang failure or both. "Software rejuvenation" is a pro-active technique aimed to prevent unexpected or unplanned outages due to aging. The basic idea is to stop the running software, clean its internal state and restart it. In this paper, we discuss software rejuvenation as applied to cluster systems. This is both an innovative and an efficient way to improve cluster system availability and productivity. Using Stochastic Reward Nets (SRNs), we model and analyze cluster systems which employ software rejuvenation. For our proposed time-based rejuvenation policy, we determine the optimal rejuvenation interval based on system availability and cost. We also introduce a new rejuvenation policy based on prediction and show that it can dramatically increase system availability and reduce downtime cost. These models are very general and can capture a multitude of cluster system characteristics, failure behavior and performability measures, which we are just beginning to explore. We then briefly describe an implementation of a software rejuvenation system that performs periodic and predictive rejuvenation, and show some empirical data from systems that exhibit aging
Hidden Markov modeling for network communication channels
Authors: Salamatian Kavé , Vaton Sandrine
Published: January 2007

In this paper we perform the statistical analysis of an Internet communication channel. Our study is based on a Hidden Markov Model (HMM). The channel switches between different states; to each state corresponds the probability that a packet sent by the transmitter will be lost. The transition between the different states of the channel is governed by a Markov chain; this Markov chain is not observed directly, but the received packet flow provides some probabilistic information about the current state of the channel, as well as some information about the parameters of the model. In this paper we detail some useful algorithms for the estimation of the channel parameters, and for making inference about the state of the channel. We discuss the relevance of the Markov model of the channel; we also discuss how many states are required to pertinently model a real communication channel.
Controlling the robots of Web search engines
Authors: Talim J. , Liu Z. , Nain Ph. , Coffman E. G.
Published: January 2007

Robots are deployed by a Web search engine for collecting information from different Web servers in order to maintain the currency of its data base of Web pages. In this paper, we investigate the number of robots to be used by a search engine so as to maximize the currency of the data base without putting an unnecessary load on the network. We adopt a finite-buffer queueing model to represent the system. The arrivals to the queueing system are Web pages brought by the robots; service corresponds to the indexing of these pages. Good performance requires that the number of robots, and thus the arrival rate of the queueing system, be chosen so that the indexing queue is rarely starved or saturated. Thus, we formulate a multi-criteria stochastic optimization problem with the loss rate and empty-buffer probability being the criteria. We take the common approach of reducing the problem to one with a single objective that is a linear function of the given criteria. Both static and dynamic policies can be considered. In the static setting the number of robots is held fixed; in the dynamic setting robots may be re-activated/de-activated as a function of the state. Under the assumption that arrivals form a Poisson process and that service times are independent and exponentially distributed random variables, we determine an optimal decision rule for the dynamic setting, i.e., a rule that varies the number of robots in such a way as to minimize a given linear function of the loss rate and empty-buffer probability. Our results are compared with known results for the static case. A numerical study indicates that substantial gains can be achieved by dynamically controlling the activity of the robots.
Mapping HLL constructs into microcode for improved execution speed
Authors: Milutinović V. , Roberts D. , Hwang K.
Published: January 2007

A processor architecture is presented which enables the constructs typical of HLLs to be mapped into the constructs typical of microcode. This mapping is provided only for selected HLL primitives and HLL statements with a relatively small number of operands and parameters. We are concerned about the optimal hardware/software trade-off, and not about the absolute 1:1 correspondence between HLL statements and highly horizontal microcode. Still, our approach enables the software for time-critical applications to be entirely written in the HLL and executed in the microcode, without the execution-time deteriorations typical for the systems with a large semantic gap between the HLL architecture and the processor architecture. This approach is particularly suitable for the time-critical dedicated control and signal processing. Using an extended subset of Fortran 77, one that matches the typical demands of the specified application area, it is shown that the proposed architecture supports the mapping of HLL constructs into microinstructions. A flexible register-transfer level simulator has been designed and implemented. It was used to run kernel routines on various configurations of the proposed architecture.
Architecture of a VLSI multiple ISA emulator
Authors: Wilkes J. L.
Published: January 2007

This paper describes the architecture of a microprogrammed processor currently under development that addresses specific program objectives. These objectives include system throughput, ISA flexibility and software transportability. The design project is at the stage of completion of the architecture and the initial stages of VLSI chip design. Three candidate ISAs are scheduled to be implemented in a prototype form in the near future. While it is too early to report on results as they relate to the objectives it is believed that the overall architecture will remain as described.
A “metasimulator” for microcoded processors
Authors: Eldridge J.
Published: January 2007

In a computer design project where software and hardware development proceed in parallel, it is essential that some form of simulation is available early so that the software can be breadboarded before the hardware is stable. The simulator must be readily modifiable to accommodate evolving hardware design. For a project at AT&T Bell Laboratories involving several processors of different designs, a program was constructed that generates a simulator from a description of the hardware block diagram. This paper describes the design of that program.
A minicomputer network management monitoring and analysis system using APL
Authors: Gross Fred A. , Taylor James C.
Published: January 2007

This article describes an integrated group of utilities distributed about an eleven super-minicomputer network for such purposes as mediating network-wide file backup without user intervention, centralized verification of all archival processes, centralized monitoring and analysis of network and individual node statistics, general system housekeeping, and notification of systems staff of trouble spots (particularly security and system use growth behavior). This facility uses APL (the Data General APL Interpreter AOS/VS APL™) for network control and file transfer, use of remote network node peripherals, interpretation of native files and file structures, native system logging processes, and for the creation and manipulation of APL and non-APL processes.
APL2—a very superior Fortran
Authors: Thomson Norman
Published: January 2007

Properly written programs in APL2 exceed the corresponding APL programs in brevity and clarity by as large a margin as APL programs exceed those written in FORTRAN. This paper takes a topic from the area of finance and uses it to illustrate this contention.
On APL software for credibility theory
Authors: Goovaerts M. J.
Published: January 2007

Recently APL software has been developed to cope with typical actuarial problems such as loss-reserving, tariff-rating, actuarial forecasting etc. In this contribution we give an illustration of that software treating a typical actuarial technique namely Credibility Theory.
Screen management in the “real world”
Authors: Stawick Edmund W.
Published: January 2007

An application-based screen management system was developed in APL for a mainframe-based interactive database. It requires no special hardware or software support and therefore runs on any asynchronous communications device. The system includes features unique to most on-line databases yet common to many screen-oriented PC systems.

The foundation of the design is the division of all report information into discrete, logical sections. By dividing a report in this way and by providing the user with a powerful set of commands to allow movement both between and within these logical sections, one achieves a very flexible and user-friendly interface.
Solutions to logic problems in APL2
Authors: Brown James A. , Alfonseca Manuel
Published: January 2007

Logic problems are traditionally solved using notations invented for their solution.
APL
provides a different way to look at logic problems.

This paper looks at some logic problems and shows how they can be solved, at least conceptually, in parallel using
APL
. The solutions are contrasted with solutions to the same problems in PROLOG. Thus, it is shown that
APL
has logic programming capabilities in addition to its well known computational abilities.
Design of a new user interface for APL
Authors: Howland John E.
Published: January 2007

Much progress has been made in APL systems during the last 10 years, however, most implementations still use the standard del editor, systems commands and a character oriented, user-typed, command interface. Even the APL systems available for new graphics based workstation systems, such as Macintosh and Sun, do not fully exploit the user interface standards for those systems. It is now time to consider establishing a new standard user interface for APL running on hardware systems which support bit mapped graphics displays and a pointing device. This paper presents such a design which is based in part on the Macintosh user interface, but includes special features for handling the APL workspace environment.
Sherlock Holmes: the mystery of the vanishing variable
Authors: Willink Roger
Published: January 2007

Solving errors in other APL systems is frequently a tedious and ultimately an expensive chore. Fortunately APL is able to fully describe its own environment without the need for 'special language query tools'. This paper describes utilities which extract directive knowledge surrounding a program error. Used as a systematic discipline, they can greatly facilitate debugging and prevent potential errors in any system.
Syntactic experiments with arrays of functions and operators
Authors: Benkard J. Philip
Published: January 2007

The syntactic binding hierarchy of Benkard is refined to produce a numeric table. This table has been used by Bunda and Gerth to implement a syntactic model of APL2. The model is extended to include new classes of objects and strands of objects other than data. Directions for syntactic development are suggested, tending toward a language which achieves flexibility by nesting simple levels in a remarkable parallel with nested arrays. Cautious experimentation with models such as this one is urged before firm extensions are made to the language.
One man's view of the ideal APL system
Authors: Falkoff Adin D.
Published: January 2007

By this time it must be clear that in principle APL can be used for programming in any field. Its algorithmic power is unquestioned, and its productivity advantage over other languages is generally conceded. Nevertheless, its use has not swept the industry. There are many reasons for this, ranging from inertia and prejudice to high cost and limited availability. In this talk I want to address the question of what I think is required of APL systems to help overcome these problems and change the situation.
Representing rubik's cube in APL
Authors: Peelle Howard A.
Published: January 2007

Seven alternative representations of Rubik's Cube are presented and compared: a 3-by-3-by-3 array of 3-digit integers; a 6-by-3-by-3 array of literals; a 5-by-12 literal matrix; an ll-by-ll sparse literal matrix; a 54-element vector; a 4-dimension array; and a 3-by-3-by-3 nested array. APL functions are given for orientation moves and quarter-turns plus several useful tools for solving the cube.
A fast APL algorithm for logic minimization
Authors: Schwartz Alfred A.
Published: January 2007

This paper presents an algorithm for logic reduction which exploits APL's array and Boolean processing capabilities. The traditional algorithm, the Quine-McCluskey method, requires extensive looping and hence is very slow when implemented in an interpretive language. The APL algorithm accomplishes the same function as the Quine-McCluskey method, but in a totally different way and much faster.
The one tree (breaking out of the workspace)
Authors: Taylor Stephen , Whitney Arthur
Published: January 2007

The advent of enclosed arrays has provided an opportunity to bring into APL previously extra-lingual objects such as tokenstrings, packages and functions. By doing so a more formal and rigorous definition of APL is achieved. Within this definition many simplifications are possible, including the subsuming of workspaces, files, libraries and other 'entities' into arrays and functions. The work is being implemented on the Hewlett-Packard A900 minicomputer.
Serialization of SVP requests-a locking proposal for APL
Authors: Meulen Michael Van Der
Published: January 2007

How does
APL
fit into the new wave of distributed systems and parallel processing? Thanks to shared variables,
APL
offers a simple, yet powerful, communication link between independent processors. But at the core of any reliable parallel processing application there must be a method of serialization. Although
APL
currently offers a very useful access control facility for shared variables, it fails to provide the basic locking mechanism required by distributed application developers to prevent simultaneous specifications. This paper proposes an
APL
language extension to achieve serialization with shared variables.
On representation and manipulation of mathematical formulas using general array data structure
Authors: Yasui Kiyotaka
Published: January 2007

APL2, one of the major extensions of APL, has capablities of symbol manipulation and nested data handling as well as numerical computations. This paper discusses an experimental implementation of a formula manipulation system using APL2. A simple, but easy-to-use algebraic system has been realized, primarily due to APL2's ability to define complicated data structures and algorithms. The overall design concept, representation and normalization of mathematical formulas, and various advantages of using APL2 general matrices are described.
Interactive data analysis and statistical graphics in APL
Authors: Polhemus Neil W.
Published: January 2007

This article describes the structure of an APL interactive statistical graphics system called STATGRAPHICS. The system provides a comprehensive package of statistical routines which create an environment in which graphical techniques are fully integrated into basic statistical procedures. Individual procedures can be executed as separate APL functions or under the control of fullscreen menus. By using fullscreen panels and soft PF keys to control major statistical procedures, graphics becomes an integral part of the statistical analysis process.
An APL-based multiple-key file system
Authors: Deerhake Stephen
Published: January 2007

To satisfy the record search, retrieval, and update requirements of a large multiple terminal APL application, a shared file system providing extensive field oriented search capabilities was designed and implemented. The file system consists of two major components: the Shared File Manager, which handles the sharing of files among multiple users, and the File Subsystem, which performs all file search and modification activities. With the exception of those portions of the system which perform the actual record input/output and data transmission between file users, both the File Manager and File Subsystem are written entirely in APL. The file structure offered by this system has been found to significantly simplify the file management portions of a broad class of applications.
A comparison of reduction in APL with polyarity in LISP
Authors: Touretzky David S.
Published: January 2007

APL'S reduce operator can be viewed as a hybrid of two simple models of reduction; these models sometimes disagree. LISP, which lacks a reduce operator, has polyadic functions that implicitly imitate the behavior of reduce. Several differences between reduction in APL and reduction as it appears in LISP are discussed. The paper goes on to develop a flexible model of polyarity based on an applicative operator distributing arguments to a dyadic function. It is shown that, while reduce is the applicative operator most commonly used for this task, some polyadic functions require other operators. The relationship between reduction and polyarity has implications for the design of other programming languages.
APL on a multiprocessor architecture
Authors: Brenner Norman
Published: January 2007

Several computers have been built experimentally which incorporate a large number of identical CPUs. One example known to this author contains 65 identical microprocessors: one is the “master” and issues orders (normally identical or nearly so) to the other 64, called “slaves”. The master and each slave has its own storage unit. It is proposed that such a computer could be used as an auxiliary to a conventional computer to assist in the execution of APL code. APL vectors would be stored in scattered fashion, one element per slave memory, so that they can be processed in parallel. Reduce and scan operations are considered in detail, and requirements are derived for the data interconnection paths among the processors.
ADONIS a dynamic APL interactive package for multivariate analysis
Authors: Confais Josiane , Bonnefous Sylviane , Brenot Jean
Published: January 2007

ADONIS is a portable data analysis package using the interactive facilities of APL. The system consists of modules which can be easily connected to investigate fastly and progressively the data set. The modules are multivariate analysis oriented and emphasize french practices. The dynamic organization of the system makes it easy to introduce new options. The package is described, a complete documentation is available.
Desirable extensions to APL for handling numerical multidimensional arrays
Authors: Dorrer Egon
Published: January 2007

A rigorous use of multidimensional arrays (hypermatrices) representing logically and naturally structured numerical data leads to some useful extensions to APL. By means of simple examples typical to optimal estimation, this paper describes the practical need for a conceptional expansion of the inner product for hypermatrices. In particular it is shown that the range of compatible axes between the two operands should not be restricted to one. The concept includes hypermatrix division and inversion. Also discussed is a simple way of representing and using the Jacobians of defined hypermatrix functions. Together with already existing mixed operations on multidimensional arrays, such extensions would considerably enhance the transparency of corresponding APL-expressions. Implementation of some of the proposed language extensions into APL is strongly recommended.
Transparent files in APL (A Preliminary Proposal)
Authors: Lucas Jim
Published: January 2007

File-related operations in APL could be classified according to whether manipulation of the file is restricted solely to APL or whether the file is to be accessible via another language. In the latter case communication is often dependent on the other language and should not affect APL language design, except for the provision of a general facility. Guidelines for using shared variables and defined functions to this end are presented. Files strictly intra-APL can and should be independent of such external communication, and a detailed proposal is presented whereby such internal files can be viewed and manipulated as if they were ordinary variables. The same conventions could also be extended to cover named objects in the workspace, thus giving enhanced access control within the workspace. Concerns addressed include syntax and nomenclature for reference to controlled or extra-workspace named objects, space constraints, error classification and reporting, upward compatibility, and to some extent, implementation concerns.
A self-defining dynamic data management system using multiple access methods
Authors: Montour Normand R.
Published: January 2007

The advent of Generalized Arrays introduces a broad range of new possibilities for Application Systems. This is the description of such a system that introduces two new concepts.

The first concept is the use of different access methods, written in APL, on the same data base using Generalized Arrays.

The second one is the use of an algorithm to monitor the Data Base and initiate prompting for action-by-the-user function.
A conceptual framework for the design of Market Simulations
Authors: Pessis Girard C.
Published: January 2007

A conceptual framework for the design of Market Simulations is developed using a systematic modularization concept in APL to allow easy and flexible combination of data entry and computational function. The Framework involves the definition of a Data Bank, an Executive Processor, and a method for defining functional relationships. It combines the power of APL with the ease of application characteristic of specialized simulation languages. Two important features of the conceptual framework are strict adherence to a predefined array syntax for functions representing market components, and a method of modifying simulations involving the use of executable lists. A protocol is developed which employs the syntactical structure of APL, and a demonstration is provided.
APL - a boon to budgeting
Authors: Spellman Beverly J. , Downing M. Scott
Published: January 2007

Recent clamor over the Federal budget of the United States brought the acronyms ZBB (
Z
ero
B
ased
B
udgeting) and POM (
P
rogram
O
bjective
M
emorandum) into the spotlight again. The two APL financial applications discussed in this paper illustrate the difference between ZBB and PPBS (
P
rogramming,
P
lanning, and
B
udgeting
S
ystem) used to create Federal budgets. These applications also discuss the differences between a budget that must be cut and monitored to keep that cut and one that may be increased. The APL applications show how APL, through the assiduous selection of utilities, raw code, graphics, and “off the shelf” software is able to reduce programming time, produce professional looking reports, and prepare for Congressional briefings.
The use of APL in a concurrent data flow environment
Authors: Wakshull Michael N.
Published: January 2007

The concept of data flow analysis allows us to think of programs as an entity which consists of many modules which are working together. The need for viewing a problem as a series of sequential steps becomes invalid and we may observe the problem which is to be solved as a series of data transformations. Order of execution is no longer of primary concern. APL lends itself to highly modularized coding techniques. I will demonstrate that APL is the perfect language for use as a data flow model.
Representations for enclosed arrays
Authors: Bernecky Robert
Published: January 2007

This paper defines
coadunate representation
, an organization of data used to represent recursive data structures in SHARP APL, and shows that it has desirable performance characteristics for several families of APL functions that apply to enclosed arrays. The effect on an implementation is to make it possible for those functions to operate on enclosed arrays at processor speeds and storage costs which are nearly independent of the contents or structure of the array elements.
APL and the search for truth
Authors: Berry Michael J.A.
Published: January 2007

New Eleusis is a card game used to study problem solving techniques. In 1977, the inventor of the game characterised efforts to get a computer to win at it as “doomed to failure.” The expressive power of APL combined with the use of nested arrays has enabled the author to confound that prediction, suggesting that APL is a good language for research in Artificial Intelligence.
Should APL be a declining language?
Authors: Crick Michael F. C.
Published: January 2007

The evolution of computer languages is compared with the evolution of natural languages. This suggests that APL might one day evolve to, or be replaced by, a non-declining form having only one basic syntax and only one class of object—as LISP has today. These “generalized objects” would embrace files, functions, and workspaces as we now know them. Such objects might be nested arrays with extended indexing and added features for sharing and access control.
A development system for testing array theory concepts
Authors: Jenkins M. A.
Published: January 2007

An experimental programming system has been written in APL to allow exploration of array theory and its use in a programming environment. The system combines array theory notation with programming language constructs in a simple but powerful language that has both applicative and imperative aspects. The system builds on the work of Hassitt and Lyon, using a shared variable interface to access their low level implementation of array operations. The system allows a small number of primitive operations to be chosen from which one builds other definitions. It has been used to study two different models of the theory, one based on set-theoretic intuition following More's series of papers, and a second that uses recursion to build definitions much in the style of Lisp. This paper describes the overall design, how it has been used and some of the internal algorithms.