Nothing Special   »   [go: up one dir, main page]

skip to main content
article
Free access

From trees into boxes

Published: 01 September 1993 Publication History

Abstract

This paper is a progress report on work undertaken to include tree data structures by means of the boxed data type available in J. Methods for displaying these boxed arrays as trees are shown. This work is part of a larger effort to provide a comprehensive set of facilities in J for working with tree structures. The facilities described were at first modelled in J and subsequently translated into C, in order to provide a J interpreter which has trees as native facilities. Thus this work also exemplifies the way in which one can tailor the J interpreter to special needs.

References

[1]
Brown, James A., A Generalization of APL, Ph. D. thesis, Department of Systems and Information Science, Syracuse University, 1971
[2]
Edwards, E. M., Generalized arrays (lists) in APL, Proceedings APL Congress 73, Copenhagen 1973, pp 99- 105
[3]
Hui, R. K. W., SAX Models for Form, Reform, and Flatten. Private communication.
[4]
Hui, R. K. W., K. E. Iverson, E. E. McDonnell and Arthur T. Whitney, APL\?, APL90 Conference Proceedings, ACM, Copenhagen 1990
[5]
Hui, R. K. W., J Model of Entree, private communication
[6]
Iverson, K. E., A Programming Language, Wiley, 1962, Section 1.23 Ordered Trees, pp 45-62, and Section 3.4, Representation of Trees, pp 121-128
[7]
Iverson, K. E., Private communication, 1992
[8]
Knuth, Donald E., Fundamental Algorithms, Section 2.3, Trees, Addison Wesley, 1968, pp 305-406
[9]
Murray, Ronald C., On tree structured extensions to the APL language, Proceedings APL Congress 73, Copenhagen 1973, pp 333-338
[10]
Nauta, G. C., Trees as nested arrays and the use of trader-disclose, APL87 Conference Proceedings, Dallas 1987, pp 157-162
[11]
Ruehr, Karl Fritz, A Survey of Extensioris to APL, APL82 Conference Proceedings, Heidelberg 1982, pp 277- 314
[12]
Ryan, Jim, Generalized Lists and Other Extensions, APL Quote-Quad 2, No. 1, 1971, pp 8-10

Recommendations

Reviews

Martin C. Gfeller

J, a derivative of APL, has arrays (which it calls “boxes”) as its only data structure. In this progress report, the authors propose to add trees as a specialization of arrays. After reviewing previous approaches, which introduced trees as a distinct data type, they proceed by defining facilities for the manipulation and display of trees represented as a subset of arrays. They list 54 functions (called “verbs” in J); for 10 of them,<__?__Pub Caret> they present annotated J code. They also outline a modification of the J interpreter's C source to incorporate the functions. The goal of the paper is not clear. Is it a proposal to introduce tree verbs as primitives into J__?__ For this, the number of functions is too large, and their interactions with the array primitives are not clearly described. Or should the tree facility be provided as a library__?__ Then modification of the interpreter source does not make sense. This fuzzy goal is a symptom of one of J's major problems: its lack of user-defined abstract data types (or objects). Tree facilities could be encapsulated as objects, for which the implementation could be supplied either in J itself or in C. Given these language constraints, which the paper makes no mention of, the model of trees as a subset of arrays is still elegant. Therefore, I recommend the paper to those interested in and familiar with J or APL. The J code listings, however, are only readable by experienced J programmers.

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM SIGAPL APL Quote Quad
ACM SIGAPL APL Quote Quad  Volume 24, Issue 1
Aug. 1993
316 pages
ISSN:0163-6006
DOI:10.1145/166198
Issue’s Table of Contents
  • cover image ACM Conferences
    APL '93: Proceedings of the international conference on APL
    September 1993
    325 pages
    ISBN:0897916123
    DOI:10.1145/166197

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 September 1993
Published in SIGAPL Volume 24, Issue 1

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 308
    Total Downloads
  • Downloads (Last 12 months)37
  • Downloads (Last 6 weeks)7
Reflects downloads up to 30 Nov 2024

Other Metrics

Citations

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media