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

skip to main content
article
Free access

Visualizing evaluation in applicative languages

Published: 01 October 1992 Publication History
First page of PDF

References

[1]
Gabriel, R.E (1987) Lisp. In S.C. Shapiro, Ed., Encyclopedia of Artificial h, tetligence, vol. 1. Wiley, N.Y., 508- 528.
[2]
Plotkin, G. A Structural Approach to Operational Semantics. Tech. Rpt. DAIMi-FN-19, Computer Science Department, Aarhus University, Demnark, 198 I~
[3]
Rees, J. and Clinger, W., Eds. The revised' report on the algorithmic language Scheme~ ACM M;PLAN Notices 21, 12 (1986), 37-79~
[4]
Steele, G.L., Jr. Common Lisp: Th~~ Langnlage. Digital Press, Burlington, Mass., 1984.
[5]
Touretzky, D.S. Ccm~mon Lisp: A Gentle Introduction to Symbolic Computation. Beniami~Cummings, Redwood City, Calif., 1990~
[6]
Winston, P.H. and Horn, B.K~P. LISP, 3d ed. Addison-Wesley, Reading, Mass 1989.

Cited By

View all
  • (2019)Direct Interpretation of Functional Programs for DebuggingElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.294.3294(41-73)Online publication date: 16-May-2019
  • (2005)Understanding the performance of parallel symbolic programsParallel Symbolic Languages and Systems10.1007/BFb0023056(79-107)Online publication date: 10-Jun-2005
  • (2000)Towards Truly Educational Programming EnvironmentsComputer Science Education in the 21st Century10.1007/978-1-4612-1298-0_6(81-111)Online publication date: 2000
  • Show More Cited By

Recommendations

Reviews

Patrick Miller

A new way of visualizing the semantics of the eval and apply operations within an applicative language (LISP) is presented. Understanding the workings of these operations is crucial to understanding the entire LISP computation process, but they are initially difficult for students to grasp. The new notation is known as “EvalTrace,” to distinguish it from simple execution traces. The paper supports the use of graphical indicators (arrows) to represent evaluation and application within function scopes. Three types of arrows are used: the evaluation arrow (thin), the application arrow (thick), and the scoping arrow (double). This notation differs from the way the contour model represents frames, and it is more suitable for a textual listing. The authors note that EvalTrace is closer to Plotkin's operational semantics notation. The paper gives complete examples with illustrations for nested applications, evaluation of global variables, function closures, and macro expansion. The examples are helpful in understanding the notation, but no means are provided to automatically generate it. Support is provided, however, for typesetting it with L A T E X macros available from the authors (note that the FTP address given in the paper is obsolete). This notation would be difficult to generate by hand and is most suitable for typesetting. It is evidently intended for textbook writers or for classroom examples.

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 Communications of the ACM
Communications of the ACM  Volume 35, Issue 10
Oct. 1992
93 pages
ISSN:0001-0782
EISSN:1557-7317
DOI:10.1145/135239
  • Editor:
  • Peter Denning
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 October 1992
Published in CACM Volume 35, Issue 10

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Lisp
  2. scheme
  3. scoping

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)180
  • Downloads (Last 6 weeks)22
Reflects downloads up to 18 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2019)Direct Interpretation of Functional Programs for DebuggingElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.294.3294(41-73)Online publication date: 16-May-2019
  • (2005)Understanding the performance of parallel symbolic programsParallel Symbolic Languages and Systems10.1007/BFb0023056(79-107)Online publication date: 10-Jun-2005
  • (2000)Towards Truly Educational Programming EnvironmentsComputer Science Education in the 21st Century10.1007/978-1-4612-1298-0_6(81-111)Online publication date: 2000
  • (1998)Visualizing Evaluation in SchemeLisp and Symbolic Computation10.1023/A:100773031680410:3(201-222)Online publication date: 1-May-1998
  • (1996)Graphical visualization of the evaluation of functional programsACM SIGCSE Bulletin10.1145/237477.23752028:SI(36-38)Online publication date: 1-Jan-1996
  • (1996)Graphical visualization of the evaluation of functional programsProceedings of the 1st conference on Integrating technology into computer science education10.1145/237466.237520(36-38)Online publication date: 2-Jun-1996
  • (1996)Graphical visualization of the evaluation of functional programsACM SIGCUE Outlook10.1145/1013718.23752024:1-3(36-38)Online publication date: 1-Jan-1996

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media