| Abstracts from APL94 International Conference on APL APL- The Language and its Applications September 11-15, 1994 Antwerp, Belgium The origin of Antwerp reaches back to remote times. A 15th century legend tells that long ago - somewhere round the beginning of the Christian area - a giant, Druon Antigon, reigned over the Scheldt land. From every boatsman passing his castle, he exacted a heavy toll; if he couldn't pay, his hand was cut off. Silvius Brabo, a Roman warrior, fought the giant, defeated and killed him, cutting off his hand and throwing it into the river. The liberated people called th place "Antwerpen" (hand-werpen - throwing of the hand) and thankfully kept Brabo's memory. According to etymology and archeology however the name Antwerpen derives from the name given to the first settlement at the "Aenwerpen" (higher land pro-truding into the river). |
Geometric data of cross-sections of beamsby Holger Besier
This paper describes a program which calculates the geometrical characteristic values of cross-sections of beams with complex shapes (bars or thin-walled profiles with any number of holes in the profiles). After a short introduction describing the calculations involved for moments of area, we will introduce the capabilities of every component of this program and we will make a survey of the whole system via flow chart. At the end of the paper we will summarize the main features of the program and mention some possible extensions. [Full Text in PDF Format, 395 KB] LiSEB: a language for modeling living systems with APL2by P. Bottoni, M. Mariotto, and P. Mussio
The paper discusses the design and implementation of LiSEB, a class-based language built on top of APL2 to respond to challenges posed by modelling living systems from a medical point of view. LiSEB capitalises on several features of APL and on some lessons learned from its history. Living systems are modelled as open systems: environments in which concurrent mobile autonomous agents interact. Modelling of these properties required extensions of traditional object-oriented paradigms and of their previous translations under APL: a) every object performs a sequence of actions dynamically modified to adapt to circumstances; b) a new policy of message management is introduced uniformly encompassing broadcast and directly addressed communication. An example of a simulation using LiSEB illustrates these concepts. [Full Text in PDF Format, 978 KB] A new graphical user interface proposal for APLby Dick Bowman
In the past APL had two significant advantages over many other problem-solving computational tools. The first of these was that the language elements of APL have a consistency and breadth that remains unchallenged, at least for the tasks for which they were designed. The other historic advantage of APL, that it provided an interactive problem-solving environment, has long since been eroded. Indeed, we have seen a transformation of some programming languages into programming environments. The purpose of this paper is to explore some possible ways in which the face that APL presents to those who program with it could usefully be enhanced. [Full Text in PDF Format, 644 KB] The origins of APL2by James A. BrownIn this paper, I examine the origins of the major ideas that formed APL2 and try to remember who said them. [Full Text in PDF Format, 549 KB] Programming in J/Windowsby Chris Burke
J has been available as shareware for the last four years. The core language has been largely complete from outset, but it is only comparatively recently that the implementation (at least for the PC) has included features needed for serious application development. The most significant change was the introduction of Windows support in release 6, which for the first time allowed full screen applications to be written in J. Following the release of 6.2, which included many additions to the Windows support and a much better session manager, I started using the Windows version of J in small applications, for which I would normally have used APL. Since then I have switched over to using J for almost all development, except for client work where APL is specifically required. I believe that J is already comparable to commercial APL's for application development and will soon be superior. In this paper, I will describe programming the J/Windows interface, and discuss some practical considerations in using it. [Full Text in PDF Format, 545 KB] APL and economic educationby Andrew Buzin
The experience of teaching economics with computers is discussed. Using APL and GRAN provides for very interactive graphical interpretation of classical economic models. The static Leontieff's model, the business cycle model and the macro equilibrium model are considered as examples. Two approaches to the teaching of economics with computers are proposed. The first is the simultaneous teaching of APL and economics. APL permits the very fast and concise coding of the models (the comparison is made with Kuboniwa's book) and their interactive exploration. The second approach represents a dialog between the computer and the students as well as the animation of illustrations of classical economic courses. [Full Text in PDF Format, 342 KB] Aberth's method for the parallel iterative finding of polynomial zerosby Tien Chi Chen and Wai-Shing Luk
Aberth's method for the iterative finding of polynomial zeros using simultaneous interacting guesses is seen to be the systematic use of Newton's method under Parallel Anticipatory Implicit Deflation (PAID), changing the single polynomial problem into that for a system of rational functions. It offers the prospect of parallel execution, discourages coincident convergences, and subjects all iterates to the same algorithm, without the uneven roundoff error accumulation due to deflation typical in serial iterative methods. Yet it converges slowly to multiple zeros, and consumes far more total computing power than serial methods. Factors hindering convergence include problem symmetry and clustering of iterates, alleviated by asymmetric initial guesses and an immediate updating strategy, as seen through the speedup in the experimental APL program PAIDAX. [Full Text in PDF Format, 937 KB] Knowledge representation in expert systems in a linguistic formby Joris E. De Meyer
A good expert system needs to be as close as possible to the knowledge and data manipulation of the expert himself. Often experts use linguistic instead of numerical values. When input data are mostly qualitative and are based on subjective knowledge of experts, the Fuzzy Set Theory is a solid mathematical model to represent and handle these data. APL arrays, scalars, vectors, matrices, operands etc. provide powerful means for implementing fuzzy sets. In this paper we will show the capabilities of APL to represent knowledge in a linguistic form. [Full Text in PDF Format, 475 KB] A Risk Management Prototype Using Object-Oriented APLby Martin Gfeller
After a quick introduction to Financial Risk Management, I show that Object-Oriented Technology (OOT) fits well with the demands of Risk Management. I then outline the analysis, design, and implementation of a prototype system for Risk Management using both OOT and APL. I describe a Dyalog APL implementation of OOT, and conclude by wondering whether APL is really suitable for OOT. [Full Text in PDF Format, 1050 KB] New development of APL technology of modelling: APL*Plus + C++ compilerby Dmitri Gusev and Igor Pospelov
A compiler that can convert non-interactive APL*PLUS programs into machine-executable code uses C++ as an intermediate language. The compiled code is machine independent and runs three times faster than the original APL program.
From Computing Reviews by G. R. Mayforth Work on APL compilers has been going on for about 20 years. A number of papers have appeared in APL conference proceedings describing various techniques for compiling APL. An APL compiler may appear that removes all constraints imposed by the language, but none to my knowledge has yet achieved this goal. Because of its design as an interpreted, interactive system, APL presents many challenges to the compiler writer. Most compilers developed to date, including the one described by this paper, have traded off language features to achieve various compilational goals. Here, the goal was to improve the execution speed of large, non-interactive economic models while retaining the rapid development capabilities provided by APL. The tradeoffs in this case were using a target program that was not interactive, was fully debugged before compilation, and avoided use of certain APL primitives, such as execution of arbitrary strings, that present difficulties in a compiled environment. That said, the authors are looking ahead to adding other APL features, such as nested arrays, to their compiled environment. The "compiler," as the authors readily admit, is really a translator that maps APL statements into C++. A library of C++ functions and data structures that parallels APL's functions and data is used to facilitate the mapping. Compilation of the C++ code yields a machine-code version of the original program. An advantage of the use of a high-level intermediate language such as C++ is the availability of compilers for many hardware systems, which allows creation of portable code. One test case is described: 200 lines of APL translated to 900 lines of C++, and the compiled binary ran 3.5 times faster than the interpreted APL. A sample showing 12 lines of APL code and the corresponding C++ is included in the paper. Similar projects have been reported, but this paper offers no references to show the authors' awareness of other work in the area. The text is clear and understandable. [Full Text in PDF Format, 435 KB] TAGS: trains, agendas, and gerundsby Roger K. W. Hui and Kenneth E. IversonTrains, agendas, and gerunds have been available in J for some time. This paper reviews their definitions and uses, and presents some new extensions that enhance their utility. [Full Text in PDF Format, 238 KB] An algebraic formula manipulation system for education and its implementation on different PCsby Makoto Kikkawa, Koichi Sugawara, and Yukio Washio
When studying the application of APL to high school education to help students in their understanding of mathematical concepts, many teachers encountered difficulties in that the result of their study could not be used in their classes because schools had provided them with computer models which can not run APL. The authors and their co-workers of the Computer Study Group of MiYagi Prefecture Society of Mathematical Education found a way to solve such a difficulty by porting study files from NiHonGo APL to I-APL. This paper discusses the problems encountered in classrooms, the new system applied to three popular models of personal computers, the actual use of the APL study files in eight schools for learning polynomial factorisation, and evaluation of both teachers and students. [Full Text in PDF Format, 682 KB] Time series forecasting using neural networksby Thomas Kolarik and Gottfried Rudorfer
Artificial neural networks are suitable for many tasks in pattern recognition and machine learning. In this paper we present an APL system for forecasting univariate time series with artificial neural networks. Unlike conventional techniques for time series analysis, an artificial neural network needs little information about the time series data and can be applied to a broad range of problems. However, the problem of network "tuning" remains: parameters of the backpropagation algorithm as well as the network topology need to be adjusted for optimal performances. For our application, we conducted experiments to find the right parameters for a forecasting network. The artificial neural networks that were found delivered a better forecasting performance than results obtained by the well known ARIMA technique. [Full Text in PDF Format, 642 KB] A rating system for qualification analysis with application to personal evaluationby Alexi I. Kononov and Gennady A. Reimarov
A way to choose the best object based upon a few expert opinions and its embodiment as a rating algorithm for an end-user personnel qualification system is described. The system is tested for clerks certifying for the State Ministry and is customised for Nuclear Power Station staff evaluation. Some aspects of the system's implementation in APL are reviewed. [Full Text in PDF Format, 840 KB] The APL theory of human visionby Gérard A. Langlet
Vision is considered as a mechanism that deals with information processing by a living organism. The conjunction of several hypotheses led to a single theoretical model of quasiautomatic integration of information, which processes compression and orthogonal transforming, without involving any classical calculation; the model thta was worked out completely with APL as the main research tool, will be exposed in APL also. It is based on special properties of matrices in modulo2 integer algebra; the paper covers: considerations on information coding, explanations about the role of patterns formed by retina receptors, about the architecture of these receptors, (cylindrical rods - the "shapes that see shapes"), about the behaviour of the electrons within the main information-processing molecule (retinal) and about the transmission of information in synapses as an annexes. Review From Computing Reviews by M. Snyder The "theory of human vision" of the title is essentially a theory of processing digital information, where processing includes both the storage and the transmission of information. All digital information can be represented as strings of bits. Therefore, it can be represented as matrices (not necessarily rectangular) of bits. Therefore, it can be represented by one-liners in APL. The author points out that the propagation of information, in many cases, can be represented by the ¬ \ operator of APL. Thus, a theory of information storage and transmission can be represented in APL. Until now, I have no argument with the author. But he seems to feel that APL is the best way to express such a theory. I do not agree. APL is not a natural language with which vast numbers of human beings feel comfortable. Thus his audience is limited to those who are willing to read a philosophical treatise written in APL. Among the examples Langlet gives are the Braille alphabet, the structure and chemistry of the retina, chaotic fractals, and DNA. Thus his audience is further limited to those who are interested in a treatise on these topics. His presentation and figures are sufficiently clear for even a nonexpert to follow. His style is exuberant, both about his theory and about APL, which is perfectly reasonable for an oral presentation at an APL conference. [Full Text in PDF Format, 1848 KB] Statistical simulation and illustration using the APL2/AGSS computing environmentby Peter A. W. Lewis
To illustrate the properties of a statistic - a function of, say, the n random variables X1...,Xn one wants to see how the distribution of the statistic varies with sample size, n, and various distributions for the Xi's. Also there may be alternative statistics for the purpose at hand and one wants to see how the various statistics compare distributionally as a function of sample size and population distribution. As an example, to estimate the mean of a distribution which is assumed to be symmetric, one could use the sample mean, the sample median, trimmed means, etc.. These comparisons are best performed by statistical simulation with appropriate graphics for the output analysis. A scheme for doing this, embodied in a FORTRAN program called SIMTBED, was put forward by LEWIS, et al, about ten years ago. The purpose of this paper is to show that these multi-factor statistical simulations can now be very easily and conveniently implemented in the APL2/AGSS computing environment. In particular, this environment has all of the necessary statistical methodology and the color graphics facilities on needs to delineate the effect of various factors in a statistical simulation. Moreover the main reason for using a batch language like FORTRAN - computing speed - is no longer a deterrent to using an interactive environment like APL2/AGSS. With this APL2/AGSS version of SIMTBED, most statistical concepts can be illustrated interactively on-line while teaching if a fast microprocessor is available. Several examples are given. [Full Text in PDF Format, 801 KB] Probabilistic studies of I Ching with use of APLby Pavel Luksha
I Ching, the ancient Chinese mantic book, is one of the main documents of Chinese culture. It consists of sixty-four 6-line pictographs, also called hexagrams, and commentary texts applied to them. In the presented work, the author examines mathematical problems connected with I Ching. The statement of problems and their solution is original. Two classes of problems are discussed: the comparison of the probability of different mantic schemes and the search for a law determining the order of the sequence of the I Ching hexagrams. The solution of the first problem and the successful explanation of the second problem are presented. APL functions written on APL*PLUS/7 are given in Appendix 3. [Full Text in PDF Format, 638 KB] An implementation of prediction calculation using APL and Clipperby Inna N. Luneva, Sergei M. Obraztsov, and Alexander L. Shimkevich
This paper describes the algorithm for the prediction calculation based upon the non-linear algebraic models' self-organization. Special block for a function recognition provides the decrease of the predicted equations exhaustive search at every stage of model building. Another peculiarity is the bootstrap use as supplementary external criterion. The implementation of this algorithm is a complex software system (calculating module is built in APL*PLUS and user-friendly interface is built in Clipper 5.01). This system works as DOS-application for Windows with dynamic data exchange. We present results of testing the system on real currency exchange rate. [Full Text in PDF Format, 374 KB] Necessity is the mother of invention or APL-Graphics application for maps of scienceby Boris A. Makeev and Alexander V. ZuevaMaps of Science are produced using APL and graphics. These Graphic representations disclose the interlinks between branches of atomic science and the rate of interpenetration between these branches. [Full Text in PDF Format, 597 KB] VDE: a virtual data engine for APLby J. MerrillThis paper discusses the development history of a data-handling mechanism known as VDE, which stands for Virtual Data Engine. My client, a mojor international bank, has been able to take advantage of the ease with which a flexible APL-based design can be extended into areas not even imagined during initial planning. Review From Computing Reviews by Martin Gfeller Merrill shares his experiences during the development and implementation of a custom database management system for a large bank. He combines inverted data files (in which table fields are stored as contiguous arrays) with APL functions performing various financial modeling calculations. This allows the system to access data calculated on the fly ("virtual data") in the same way as stored data. The evolution from a programmer's tool to an end-user system with data consolidation, a report generator, and access to external data is described. The paper is worth reading for current and prospective APL programmers who are interested in systems that intimately link data storage with calculations. Some size and performance comparisons to off-the-shelf DBMSs would have enhanced its value. The exposition would benefit from dividing up the long sections and from some references to related literature (both APL and non-APL). [Full Text in PDF Format, 820 KB] Is APL a competitive language for international Olympiads in informaticsby I. Mironov and V. Bargachev
After participating in the International Olympiads for Informatics the authors evaluated the effectiveness and appropriateness of APL in the solution of the same set of problems. [Full Text in PDF Format, 680 KB] APL for statistical research of atmospheric flows during the dust stormby Aibarsha A. Mukanova
The existence of the Aral Sea depends almost completely on the waters of the Amudarya and Syrdarya rivers, so that a considerable decrease in the flow in the drainage-basin of these rivers results in a lower sea level. As a result huge areas of sea bottom are now revealed, mainly on the eastern sea coast. A significant part of this area is comprised of deposits of a loose mechanical composition, mainly from dust, which is exposed to intensive weathering. Although dust storms in the Aral Sea zone occurred before, the appearance of a new powerful source for salt and dust transport evokes well founded anxiety. This source appeared in a satellite photo in 1975, and the decoded data showed the transportation of salt-dust masses reaching the south and west sea coast. Later investigations show that this source area has a tendency to increase with the formation of a huge zone of moving dust. There is also the problem of the desertification of the Aral east coast. In the world the study of dust aerosol qualities has received great attention, because the deserts which occupy more than 30% of the land area are the main source of dust aerosol. Special attention is given to experimental and theoretical investigations of desert aerosol transport problems for the quantitative description of the wind driven transfer of dust from source to precipitation area. [Full Text in PDF Format, 280 KB] Use of APL in Japanby Kyosuke Saigusa
This is a historical account of the use of APL, in Japan from the personal observation of the author. This is not intended to be scientific nor objective or based on studies or surveys of any sort. The description is mostly about IBM APL, because the author was employed by IBM for a significant part of his active years with APL. But the author also believes himself to be amongst the most informed persons in the area of the use of APL in Japan regardless of interpreter's manufacturers by being an open and independent APL consultant for 10 years now with wide contacts with various individuals in the world of APL. [Full Text in PDF Format, 772 KB] An object-oriented APL2by David A. Selby
Object oriented programming has become an important and accepted part of the computer software industry. Nearly every new operating system that has recently arrived or is scheduled to arrive soon is object oriented in nature. If APL2 is to continue to be a mainstream computational environment, it is very important that it becomes object oriented. Finding a way that APL2 may sit comfortably in these new operating systems is important. Unfortunately, in both implementation and current programming teaching philosophy, existing APL2 does not easily offer the end user the ability to adopt this new approach. This paper proposes some small changes to the basic APL2 language definition which will permit objects to be defined and used. It also suggests some major changes to the end user's programming methodology. [Full Text in PDF Format, 548 KB] Simulation of mail warehouse: an APL2 solution for a large company problemby Alexander O. SkomorokhovThe paper describes an APL2 solution to the problem of mail and document distribution in a large (33,000 employees) company. A simulation of a fully automated warehouse for delivery of business papers is presented and the difficulties of simulation software design are considered. [Full Text in PDF Format, 679 KB] A parallel correlation-based algorithm in J learns neural network connectionsby Alexei N. Skurikhin and Alvin J. SurkanThe paper describes and demonstrates a J language implementation of a correlation-based algorithm as it is applied to learning feed-forward an recurrent neural networks. Alopex, the learning algorithm, can be used as a tool for solving a wide range of problems for complex systems including: modelling, prediction, diagnosis and pattern recognition. Instead of relying on error gradients, the Alopex algorithm learns on the basis of local correlations between the changes in individual weights and the changes of a global error measure. The algorithm is useful for optimizing networks having arbitrary transfer functions distributed over its individual neurones and for minimizing a large class of error measures. Alopex has the advantage that it updates the weights in a network simultaneously (i.e. in parallel) requiring only local computations. This permits a complete parallelization of the algorithm represented in the J language implementation of this demonstration. This J program for the algotrithm is applied to the real-world econometric problem of predicting the gas sendout or consumption value one on more days after the end of the time series record. [Full Text in PDF Format, 679 KB] The impact of APL on first year mathematicsby Walter G. Spunde
In 1993, the Australian Federal Government's Committee for the Advancement of University Teaching (CAUT) funded a project to develop an integrated computationally rich first year mathematics course built on the use of APL as an integral part of the instruction. This article outlines how the standard syllabus was amended to respond to the available computing power for elucidating mathematical topics and what mathematical skills were improved or neglected by the novel presentation. [Full Text in PDF Format, 545 KB] Analysing time-series in APLby Alan M. Sykes
This paper considers the provision of time-series software for statistics students to use. Specifically it discusses some appropriate graphical output, and the fitting of ARIMA models using a version of Marquardt's Non-Linear Least Squares algorithm. [Full Text in PDF Format, 493 KB] Applying matrix divide in APL and Jby Norman Thomson
This paper shows two generalisations of the APL2 domino function. Domino has two roles, first the solution of non-degenerate systems of linear equations, and secondly the estimation of linear least squares fits. There is an inherent duality between these, since the first consists of finding a series of x-values to fit a set of fixed c's (coefficients), whereas the second consists of finding a series of c's to fit a set of fixed x- and y-values. This duality is exploited in extending both roles of domino using Newton-Raphson iteration to find roots of non-linear systems on the one hand, and to perform non-linear curve fitting on the other. The nature of the problem is such that it is natural to write APL2 solutions using operators rather than functions, and in each case a corresponding J solution is given. Further simple idioms involving domino give the consequent fitted values and Analysis of Variance calculations. The paper concludes with a compact tool-kit showing in parallel columns both the APL2 and J codes needed to achieve these extensions. The brevity of the J code speaks for itself. [Full Text in PDF Format, 503 KB] Restriction riddance: more power to parenthesesby F. H. D. van BatenburgThis paper proposes to enhance the power of parentheses. Instead of restricting parentheses to expressions that yield an argument of a function, as in "(2-3)+6", I propose to use parentheses also for arguments of operators. If operators are allowed to have not only functions, but also parenthesised expressions as arguments, APL expressions will be more powerful. It will be shown that this proposal enables the programmer to make various types of expressions more readable and even make it possible to experiment with different types of structured programming constructs. Review From Computing Reviews by Brian L. Meek The author points out that the history of APL is one of the removal of restrictions, citing as examples not having to declare the datatypes of language elements such as variables before use, not tying them to one datatype, and not having to declare array sizes. He goes on to propose the relaxation of another restriction in APL, the one that confines the use of parentheses to expressions that yield the argument of a function, and he gives examples of ways in which freer use of parentheses could contribute to the solutions to programming problems. He ends by proposing two further steps, allowing vectors of expressions as well as of functions, and removing the requirement that opening and closing parentheses in a single line must match. This, he argues, would allow "natural" (in APL terms) implementations of constructs familiar from other languages, if...else and case. The paper will interest most regular and many occasional APL users, and those who do not routinely read APL conference proceedings or APL Quote Quad may wish to look it up. Syntax-mongering is a popular pastime in most language communities, and APLers are known for devising, by way of relaxation, programs that cram the maximum processing into one line; this paper may provoke further offerings of both kinds. The text is lively and readable but marred by a considerable number of misprints, the most prominent of which, the misspelling of "parentheses" in the running footer, is not the author's fault. The misprints caused me to ponder a potential side-effect of removal of syntactic restrictions, namely the increased risk that a typo will produce, not an error, but the solution to a different problem from the one you thought you were programming. |

Last Update: July 28, 1998
For questions, problems, or comments regarding this website, please send
email to:infodir_sigapl@acm.org