skip to main content
10.1145/1244381.1244402acmconferencesArticle/Chapter ViewAbstractPublication PagespepmConference Proceedingsconference-collections
Article

The semantics of graphical languages

Published: 15 January 2007 Publication History

Abstract

Visual notations are pervasive in circuit design, control systems, and increasingly in mainstream programming environments. Yet many of the foundational advances in programming language theory are taking place in the context of textual notations. In order to map such advances to the graphical world, and to take the concerns of the graphical world into account when working with textual formalisms, there is a need for rigorous connections between textual and graphical expressions of computation.
To this end, this paper presents a graphical calculus called Uccello. Our key insight is that Ariola and Blom's work on sharing in the cyclic lambda calculus provides an excellent foundation for formalizing the semantics of graphical languages. As an example of what can be done with this foundation, we use it to extend a graphical language with staging constructs. In doing so, we provide the first formal account of sharing in a multi-stage calculus.

References

[1]
Robin Abraham and Martin Erwig. Header and unit inference for spreadsheets through spatial analyses. In IEEE Symposium on Visual Languages and Human-Centric Computing, pages 165--172, 2004.
[2]
Zena M. Ariola and Stefan Blom. Cyclic lambda calculi. In Martín Abadi and Takayasu Ito, editors, Theoretical Aspects of Computer Software, Third International Symposium, TACS '97, Sendai, Japan, volume 1281 of Lecture Notes in Computer Science, pages 77--106. Springer, 1997.
[3]
M. Burnett, J. Atwood, R. Walpole Djang, H. Gottfried, J. Reichwein, and S. Yang. Forms/3: A first-order visual language to explore the boundaries of the spreadsheet paradigm. Journal of Functional Programming, 11:155--206, March 2001.
[4]
W. Citrin, M. Doherty, and B. Zorn. Formal semantics of control in a completely visual programming language. In Allen L. Ambler and Takayuki Dan Kimura, editors, Proceedings of the Symposium on Visual Languages, pages 208--215, Los Alamitos, CA, USA, October 1994. IEEE Computer Society Press.
[5]
W. Citrin, R. Hall, and B. Zorn. Programming with visual expressions. In Volker Haarslev, editor, Proc. 11th IEEE Int. Symp. Visual Languages, pages 294--301. IEEE Computer Society Press, 5--9 September 1995.
[6]
T. H. Cormen, C. E. Leiserson, and R. L. Rivest. Introduction to algorithms. MIT Press and McGraw-Hill Book Company, 14th edition, 1994.
[7]
Stephan Ellner. Preview: An untyped graphical calculus for resource-aware programming. Master's thesis, Rice University, 2004.
[8]
Stephan Ellner and Walid Taha. The semantics of graphical languages. 2006. Available in Informal Proceedings of DCC {20}.
[9]
M. Erwig. Abstract syntax and semantics of visual languages. Jounral of Visual Languages and Computing, 9:461--483, October 1998.
[10]
Martin Erwig and Margaret M. Burnett. Adding apples and oranges. In 4th International Symposium on Practical Aspects of Declarative Languages, pages 173--191, 2002.
[11]
Martin Erwig and Bernd Meyer. Heterogeneous visual languages-integrating visual and textual programming. In Visual Languages, VL, pages 318--325, 1995.
[12]
National Instruments. LabVIEW Student Edition 6i. Prentice Hall, 2001.
[13]
S. Peyton Jones, A. Blackwell, and M. Burnett. A user-centred approach to functions in Excel. ICFP, pages 165--176, 2003.
[14]
Edward A. Lee. What's ahead for embedded software? IEEE Computer, pages 18--26, September 2000.
[15]
MetaOCaml: A compiled, type-safe multi-stage programming language. Available online from http://www.metaocaml.org/, 2004.
[16]
National Instruments. LabVIEW. Online at http://www.ni.com/labview.
[17]
Oregon Graduate Institute Technical Reports. P.O. Box 91000, Portland, OR 97291--1000, USA. Available online from ftp://cse.ogi.edu/pub/tech-reports/README.html.
[18]
Jan Rekers and Andy Schuerr. Defining and parsing visual languages with layered graph grammars. Journal of Visual Languages and Computing, 8(1):27--55, 1997.
[19]
Amr Sabry. The Formal Relationship between Direct and Continuation-Passing Style Optimizing Compilers: A Synthesis of Two Paradigms. PhD thesis, Rice University, August 1994.
[20]
Mary Sheeran and Tom Melham, editors. Sixth International Workshop on Designing Correct Circuits: Vienna, 25--26 March 2006: Participants' Proceedings. ETAPS 2006, March 2006. A Satellite Event of the ETAPS 2006 group of conferences.
[21]
Walid Taha. Multi-Stage Programming: Its Theory and Applications. PhD thesis, Oregon Graduate Institute of Science and Technology, 1999. Available from {17}.
[22]
Walid Taha and Michael Florentin Nielsen. Environment classifiers. In The Symposium on Principles of Programming Languages (POPL '03), New Orleans, 2003.
[23]
The MathWorks. Simulink. Online at http://www.mathworks.com/products/simulink.
[24]
Uccello: A model for supporting higher-order, generative programming in visual languages. Available online from http://www.resource-aware.org/twiki/pub/RAP/WebHome/final-small.png, 2006.
[25]
Da-Qian Zhang, Kang Zhang, and Jiannong Cao. A context-sensitive graph grammar formalism for the specification of visual languages. The Computer Journal, 44(3): 186--200, 2001.

Cited By

View all
  • (2018)Software language engineering in the largeComputer Languages, Systems and Structures10.1016/j.cl.2018.08.00254:C(386-405)Online publication date: 1-Dec-2018
  • (2017)Advances in Modeling Language EngineeringModel and Data Engineering10.1007/978-3-319-66854-3_1(3-17)Online publication date: 6-Sep-2017
  • (2009)A dynamically customizable process-centered evaluation modelProceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming10.1145/1599410.1599416(37-48)Online publication date: 7-Sep-2009
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
PEPM '07: Proceedings of the 2007 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
January 2007
180 pages
ISBN:9781595936202
DOI:10.1145/1244381
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 15 January 2007

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

PEPM07
Sponsor:

Acceptance Rates

Overall Acceptance Rate 66 of 120 submissions, 55%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 01 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2018)Software language engineering in the largeComputer Languages, Systems and Structures10.1016/j.cl.2018.08.00254:C(386-405)Online publication date: 1-Dec-2018
  • (2017)Advances in Modeling Language EngineeringModel and Data Engineering10.1007/978-3-319-66854-3_1(3-17)Online publication date: 6-Sep-2017
  • (2009)A dynamically customizable process-centered evaluation modelProceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming10.1145/1599410.1599416(37-48)Online publication date: 7-Sep-2009
  • (2008)Plenary talk III Domain-specific languages2008 International Conference on Computer Engineering & Systems10.1109/ICCES.2008.4772953(xxiii-xxviii)Online publication date: Nov-2008

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media