Introduction to algorithms
The formal relationship between direct and continuation-passing style optimizing compilers: a synthesis of two paradigms
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
What's Ahead for Embedded Software?
Computer
PADL '02 Proceedings of the 4th International Symposium on Practical Aspects of Declarative Languages
TACS '97 Proceedings of the Third International Symposium on Theoretical Aspects of Computer Software
Heterogeneous visual languages-integrating visual and textual programming
VL '95 Proceedings of the 11th International IEEE Symposium on Visual Languages
Programming with visual expressions
VL '95 Proceedings of the 11th International IEEE Symposium on Visual Languages
Multistage programming: its theory and applications
Multistage programming: its theory and applications
A user-centred approach to functions in Excel
ICFP '03 Proceedings of the eighth ACM SIGPLAN international conference on Functional programming
Forms/3: A first-order visual language to explore the boundaries of the spreadsheet paradigm
Journal of Functional Programming
Header and Unit Inference for Spreadsheets Through Spatial Analyses
VLHCC '04 Proceedings of the 2004 IEEE Symposium on Visual Languages - Human Centric Computing
A dynamically customizable process-centered evaluation model
PPDP '09 Proceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming
Hi-index | 0.00 |
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.