Thapl—A Theatrical Programming Language

Total Page:16

File Type:pdf, Size:1020Kb

Thapl—A Theatrical Programming Language Thapl—A Theatrical Programming Language Matan I. Peled Technion - Computer Science Department - M.Sc. Thesis MSC-2020-12 - 2020 Technion - Computer Science Department - M.Sc. Thesis MSC-2020-12 - 2020 Thapl—A Theatrical Programming Language Research Thesis Submitted in partial fulfillment of the requirements for the degree of Master of Science in Computer Science Matan I. Peled Submitted to the Senate of the Technion — Israel Institute of Technology Heshvan 5780 Haifa November 2019 Technion - Computer Science Department - M.Sc. Thesis MSC-2020-12 - 2020 Technion - Computer Science Department - M.Sc. Thesis MSC-2020-12 - 2020 This work was carried out under the joint supervision of Prof. Yossi Gil and Prof. David H. Lorenz, in the Faculty of Computer Science. Some results in this thesis have been published as articles or talks by the author and research collaborators in conferences and journals during the course of the author’s magisteral research period, the most up-to-date versions of which being: Matan I. Peled, Joseph (Yossi) Gil, and David H. Lorentz. Thapl—a theaterical program- ming language. In 5th Workshop on Domain-Specific Language Design and Implementation (DSLDI), 2017. Acknowledgements To my parents Dafna and Michael, I am grateful for your endless love and support throughout the years, I literally wouldn’t have been here without you. I am indebted to my advisors, Prof. Yossi Gil and Prof. David H. Lorentz, for pa- tiently guiding me through tight deadlines, and for teaching me what research actually is. A most heartful thanks goes to my friends for keeping me sane, to Nitzan for making sure I go swimming at least once a week no matter what, and to all those who helped me during my research; especially Shiri and Hila who helped improve this document. Finally, I’d like to thank Ira for being patient and understanding, for putting up with me when my stress levels went through the roof, and just for being awesome. ⌨⌨⌨⌨⌨⌨⌨⌨⌨⌨⌨ The generous support of the Technion is acknowledged. This research was supported in part by the Israel Science Foundation (ISF) under Grant No. 1440/14. Technion - Computer Science Department - M.Sc. Thesis MSC-2020-12 - 2020 Technion - Computer Science Department - M.Sc. Thesis MSC-2020-12 - 2020 Contents List of Listings List of Figures List of Terms Abstract 1 1 Introduction 3 1.1 The Problem ................................. 3 1.2 Shortcomings of Current Solutions ..................... 4 1.3 Thesis ..................................... 4 1.4 A Simple Example in Thapl ........................ 5 2 Background 9 2.1 Presentation Software ............................ 9 2.2 Visualization Languages ........................... 13 3 Tutorial by Example 17 3.1 Introduction .................................. 18 3.1.1 Defining characters .......................... 18 3.1.2 Defining actors ............................ 19 3.2 Action ..................................... 19 3.2.1 Defining verbs ............................ 21 3.2.2 Controlling time ........................... 21 3.3 Conclusion .................................. 21 4 Syntax 25 4.1 Lexical Matters ................................ 26 4.1.1 Literals ................................ 27 4.1.2 Tokenization sequence ........................ 29 4.2 Program Structure .............................. 30 4.3 Declarative Definitions ............................ 32 4.3.1 Type System and Primitive Types ................. 34 Technion - Computer Science Department - M.Sc. Thesis MSC-2020-12 - 2020 4.4 Directives: Sentences, Subjects, Verbs, and Modifiers ........... 35 4.4.1 Compound Directives ........................ 35 4.4.2 Atomic directives ........................... 36 4.5 Practicalities and Ambiguities ........................ 38 4.5.1 Parsing ................................ 38 4.5.2 Ambiguities .............................. 39 5 Semantics: Language and Animation 41 5.1 Object Model ................................. 41 5.1.1 Object Creation ........................... 42 5.1.2 Inheritance .............................. 42 5.2 Name Resolution in Thapl ......................... 42 5.2.1 Implementation Using Context Data-structure .......... 43 5.2.2 Simulating Other Languages .................... 46 5.3 Animation Semantics ............................. 47 5.3.1 Primitives ............................... 47 5.3.2 Solving for Slides ........................... 48 6 Physical Constraint Model: Springs 51 6.1 The Physical Model ............................. 53 6.1.1 Linear springs ............................. 53 6.1.2 The spring group(s) ......................... 56 6.1.3 Discrete non-linear springs ..................... 58 7 Results 61 7.1 Fitness For Purpose ............................. 61 7.1.1 Complex Animations ......................... 61 7.1.2 Simulating Logic Circuits ...................... 62 7.1.3 Hannukah Menorah ......................... 63 7.2 Flexibility ................................... 65 7.3 Analysis .................................... 66 8 Conclusion and Future Work 69 8.1 Related Research ............................... 70 8.1.1 Musical Composition ......................... 70 8.1.2 Name-binding ............................. 71 8.1.3 Other DSLs .............................. 71 8.2 Future Directions ............................... 74 8.3 Closing Notes ................................. 75 Technion - Computer Science Department - M.Sc. Thesis MSC-2020-12 - 2020 A Code Listings 83 A.1 Thapl Compiler ............................... 83 A.1.1 Grammar ............................... 83 A.2 Little Smalltalk ............................. 86 B Code Listings for TEX and Thapl Examples 89 B.1 Towers of Hanoi ................................ 89 B.1.1 LATEX ................................. 89 B.1.2 Thapl ................................. 92 B.2 Simulating a Logic Circuit .......................... 93 B.2.1 LATEX ................................. 93 B.2.2 Thapl ................................. 95 B.3 Hannukah Menorah ............................. 97 B.3.1 Thapl ................................. 97 B.4 Convolution .................................. 98 B.4.1 Thapl ................................. 98 B.5 Intersection .................................. 99 B.5.1 Thapl ................................. 99 C Syntax Derivation Rules 101 D Installation Guide & Quick Start 105 D.1 Installing and running the main program ................. 105 D.2 Installing the Jupyter extension ...................... 106 Hebrew Abstract i Technion - Computer Science Department - M.Sc. Thesis MSC-2020-12 - 2020 Technion - Computer Science Department - M.Sc. Thesis MSC-2020-12 - 2020 List of Listings 1.1 First example of a Thapl program ..................... 4 1.2 A simple Thapl program animating intersecting circles ......... 6 2.1 A simple animation in LATEX ........................ 10 2.2 Animation using TikZ’s animation facility. ................. 12 2.3 A simple animation in CSS ......................... 13 2.4 Towers of Hanoi in AnimalScript [Rössling and Freisleben, 2001] ... 14 2.5 Bubble sort in AnimalScript2 [Rößling et al., 2004] ........... 14 3.1 Empty Thapl Program ........................... 18 3.2 Empty Thapl Program, with load statement ............... 18 3.3 Definition of pole and disc ......................... 18 3.4 Adding has properties to pole and disc .................. 19 3.5 Defining actors for poles and discs ..................... 19 3.6 Adding a simple action to the animation .................. 20 3.7 Defining a can property ........................... 21 3.8 Solving the Towers of Hanoi ......................... 22 3.9 Solving the Towers of Hanoi quickly using meanwhile ........... 23 4.1 Organization and structure of a Thapl program. ............. 30 4.2 An example of a simple entity definition. .................. 34 5.1 Thapl program demonstrating the object model. ............. 42 5.2 Illustration of the Context concept using Python syntax ........ 44 5.3 Context construction for “play grouping” using Python syntax ..... 45 5.4 Context construction for “play grouping” with link to enclosing scope . 45 5.5 Context construction for “play grouping” with inheritance and scopes . 46 7.1 Stack Exchange answer for complex animation .............. 62 7.2 Thapl version of “complex animation” ................... 62 7.3 Stack Exchange answer for circuit simulation (excerpt) .......... 63 7.4 Thapl implementation of a circuit simulation presentation (excerpt) .. 63 7.5 Hannukah Menorah TikZ animation, from Stack Exchange ........ 64 7.6 Hannukah Menorah: Thapl Entity definitions (excerpt) ......... 64 7.7 Hannukah Menorah: Thapl action directives (excerpt) ......... 65 A.1 thapl.lark: Grammar definition for Thapl ............... 83 Technion - Computer Science Department - M.Sc. Thesis MSC-2020-12 - 2020 A.2 test_smalltalk.py: Demonstration of context implementation of the Smalltalk type hierarchy ........................... 86 B.1 LATEX Implementation of Towers of Hanoi ................. 89 B.2 Complete Thapl implementation of Towers of Hanoi ........... 92 B.3 LATEXimplementation of a flip-flop digital circuit ............. 93 B.4 Thapl implementation of a flip-flop digital circuit ............ 95 B.5 Complete Hannukah Menorah Thapl implementation .......... 97 B.6 Convolution presentation: Thapl implementation ............ 98 B.7 Intersection presentation: Thapl implementation ............. 99 D.1 Example code to run within Jupyter ................... 107 D.2 Installation script for Thapl ........................ 107 Technion - Computer Science
Recommended publications
  • Photo Journalism, Film and Animation
    Syllabus – Photo Journalism, Films and Animation Photo Journalism: Photojournalism is a particular form of journalism (the collecting, editing, and presenting of news material for publication or broadcast) that employs images in order to tell a news story. It is now usually understood to refer only to still images, but in some cases the term also refers to video used in broadcast journalism. Photojournalism is distinguished from other close branches of photography (e.g., documentary photography, social documentary photography, street photography or celebrity photography) by complying with a rigid ethical framework which demands that the work be both honest and impartial whilst telling the story in strictly journalistic terms. Photojournalists create pictures that contribute to the news media, and help communities connect with one other. Photojournalists must be well informed and knowledgeable about events happening right outside their door. They deliver news in a creative format that is not only informative, but also entertaining. Need and importance, Timeliness The images have meaning in the context of a recently published record of events. Objectivity The situation implied by the images is a fair and accurate representation of the events they depict in both content and tone. Narrative The images combine with other news elements to make facts relatable to audiences. Like a writer, a photojournalist is a reporter, but he or she must often make decisions instantly and carry photographic equipment, often while exposed to significant obstacles (e.g., physical danger, weather, crowds, physical access). subject of photo picture sources, Photojournalists are able to enjoy a working environment that gets them out from behind a desk and into the world.
    [Show full text]
  • Slides for Students
    SLIDES FOR STUDENTS The Effective Use of Powerpoint in Education GARY D. FISK SLIDES FOR STUDENTS The Effective Use of Powerpoint in Education GARY D. FISK Blue Ridge | Cumming | Dahlonega | Gainesville | Oconee Copyright © 2019 by Gary D. Fisk All rights reserved. No part of this book may be reproduced in whole or in part without written permission from the publisher, except by reviewers who may quote brief excerpts in connections with a review in newspaper, magazine, or electronic publications; nor may any part of this book be reproduced, stored in a retrieval system, or transmitted in any form or by any means electronic, mechanical, photocopying, recording, or other, without the written permission from the publisher. Published by: University of North Georgia Press Dahlonega, Georgia Printing Support by: Lightning Source Inc. La Vergne, Tennessee Book design by Corey Parson. ISBN: 978-1-940771-43-4 Printed in the United States of America For more information, please visit: http://ung.edu/university-press Or e-mail: [email protected] CONTENTS 0 Introduction vii 1 Presentation Software 1 2 Powerpointlessness 14 3 Educational Effectiveness and Student Perceptions 32 4 Avoiding Death by Powerpoint 53 5 Design for Emotion I 67 6 Design for Emotion II 84 7 Design for Sensation 100 8 Design for Perception I 117 9 Design for Perception II 135 10 Design for Attention 156 11 Design for Cognition I 170 12 Design for Cognition II 190 13 Design for Behavior 213 14 Technology Choices 232 15 Tips and Tricks for Slide Presentations 247 16 A Classroom Presentation Example 264 17 The Bright Future of Powerpoint in Education 292 A Appendix A 307 B Appendix B 310 C Appendix C 314 0 INTRODUCTION The creative spark that motivated this book was the observation that powerpoint presentations sometimes fail to produce a positive impact on student learning.
    [Show full text]
  • The Uses of Animation 1
    The Uses of Animation 1 1 The Uses of Animation ANIMATION Animation is the process of making the illusion of motion and change by means of the rapid display of a sequence of static images that minimally differ from each other. The illusion—as in motion pictures in general—is thought to rely on the phi phenomenon. Animators are artists who specialize in the creation of animation. Animation can be recorded with either analogue media, a flip book, motion picture film, video tape,digital media, including formats with animated GIF, Flash animation and digital video. To display animation, a digital camera, computer, or projector are used along with new technologies that are produced. Animation creation methods include the traditional animation creation method and those involving stop motion animation of two and three-dimensional objects, paper cutouts, puppets and clay figures. Images are displayed in a rapid succession, usually 24, 25, 30, or 60 frames per second. THE MOST COMMON USES OF ANIMATION Cartoons The most common use of animation, and perhaps the origin of it, is cartoons. Cartoons appear all the time on television and the cinema and can be used for entertainment, advertising, 2 Aspects of Animation: Steps to Learn Animated Cartoons presentations and many more applications that are only limited by the imagination of the designer. The most important factor about making cartoons on a computer is reusability and flexibility. The system that will actually do the animation needs to be such that all the actions that are going to be performed can be repeated easily, without much fuss from the side of the animator.
    [Show full text]
  • What Is Augmented Reality
    Code Catalyst: Designing and Implementing Augmented Reality Curriculum in Art and Visual Culture Education Item Type text; Electronic Thesis Authors Rodriguez, Andie (Samantha) Citation Rodriguez, Andie (Samantha). (2020). Code Catalyst: Designing and Implementing Augmented Reality Curriculum in Art and Visual Culture Education (Master's thesis, University of Arizona, Tucson, USA). Publisher The University of Arizona. Rights Copyright © is held by the author. Digital access to this material is made possible by the University Libraries, University of Arizona. Further transmission, reproduction, presentation (such as public display or performance) of protected items is prohibited except with permission of the author. Download date 23/09/2021 13:14:44 Link to Item http://hdl.handle.net/10150/656764 CODE CATALYST: DESIGNING AND IMPLEMENTING AUGMENTED REALITY CURRICULUM IN ART AND VISUAL CULTURE EDUCATION by Samantha Rodriguez ______________________________ Copyright © Samantha Rodriguez 2020 A Thesis Submitted to the Faculty of the SCHOOL OF ART In Partial Fulfillment of the Requirements For the Degree of MASTER OF ARTS In the Graduate College THE UNIVERSITY OF ARIZONA 2020 THE UNIVERSITY OF ARIZONA GRADUATE COLLEGE As members of the Master’s Committee, we certify that we have read the thesis prepared by: Andie (Samantha) Rodriguez titled: Code Catalyst: Designing and Implementing Augmented Reality Curriculum in Art and Visual Culture Education and recommend that it be accepted as fulfilling the thesis requirement for the Master’s Degree. Ryan Shin _________________________________________________________________ Date: ____________Jan 4, 2021 Ryan Shin Carissa DiCindio _________________________________________________________________ Date: ____________Jan 4, 2021 Carissa DiCindio _________________________________________________________________ Date: ____________Jan 4, 2021 Michael Griffith Final approval and acceptance of this thesis is contingent upon the candidate’s submission of the final copies of the thesis to the Graduate College.
    [Show full text]
  • Catalogue Anglais Version Finale (2018-09-26)
    Montréal Campus 416, boul. de Maisonneuve West, suite 700 Montréal (Québec) H3A 1L2 514-849-1234 Laval Campus 3, Place Laval, suite 400 Laval (Québec) H7N 1A2 450-662-9090 Longueuil Campus 1111, rue Saint-Charles West, suite 120 Longueuil (Québec) J4K 5G4 450-674-0097 Pointe-Claire Campus 1000, boul. St-Jean, suite 500 Pointe-Claire (Québec) H9R 5P1 514-782-0539 Anjou Campus 7400, Boulevard Galeries d’Anjou, suite 130 Anjou, H1M 3M2 514-351-0888 7400, Boulevard Mon QUÉBEC ÉDITION Reference code : CDI-CAT-PQF-0718 Version : July 2018 © Collège CDI Administration. Technologie. Santé. All rights reserved. Printed in Canada. It is prohibited to reproduce this publication in its entirety, or in part, without the written consent of Collège CDI Administration. Technologie. Santé. *For the sake of clarity and readability, the masculine form is used throughout this catalogue. TABLE OF CONTENTS ADMINISTRATION CASUALTY INSURANCE – LCA.BF ............................................................................................................... 1 FINANCIAL MANAGEMENT – LEA.AC ........................................................................................................ 4 SPECIALIST IN APPLIED INFORMATION TECHNOLOGY – LCE.3V .............................................................. 8 OPTION: LEGAL ADMINISTRATIVE ASSISTANT SPECIALIST IN APPLIED INFORMATION TECHNOLOGY – LCE.3V ............................................................ 11 OPTION : MEDICAL OFFICE ASSISTANT PARALEGAL TECHNOLOGY - JCA.1F……………………………………………………………………………………………………14
    [Show full text]
  • SVG Tutorial
    SVG Tutorial David Duce *, Ivan Herman +, Bob Hopgood * * Oxford Brookes University, + World Wide Web Consortium Contents ¡ 1. Introduction n 1.1 Images on the Web n 1.2 Supported Image Formats n 1.3 Images are not Computer Graphics n 1.4 Multimedia is not Computer Graphics ¡ 2. Early Vector Graphics on the Web n 2.1 CGM n 2.2 CGM on the Web n 2.3 WebCGM Profile n 2.4 WebCGM Viewers ¡ 3. SVG: An Introduction n 3.1 Scalable Vector Graphics n 3.2 An XML Application n 3.3 Submissions to W3C n 3.4 SVG: an XML Application n 3.5 Getting Started with SVG ¡ 4. Coordinates and Rendering n 4.1 Rectangles and Text n 4.2 Coordinates n 4.3 Rendering Model n 4.4 Rendering Attributes and Styling Properties n 4.5 Following Examples ¡ 5. SVG Drawing Elements n 5.1 Path and Text n 5.2 Path n 5.3 Text n 5.4 Basic Shapes ¡ 6. Grouping n 6.1 Introduction n 6.2 Coordinate Transformations n 6.3 Clipping ¡ 7. Filling n 7.1 Fill Properties n 7.2 Colour n 7.3 Fill Rule n 7.4 Opacity n 7.5 Colour Gradients ¡ 8. Stroking n 8.1 Stroke Properties n 8.2 Width and Style n 8.3 Line Termination and Joining ¡ 9. Text n 9.1 Rendering Text n 9.2 Font Properties n 9.3 Text Properties -- ii -- ¡ 10. Animation n 10.1 Simple Animation n 10.2 How the Animation takes Place n 10.3 Animation along a Path n 10.4 When the Animation takes Place ¡ 11.
    [Show full text]
  • Cartoon Animation for Powerpoint Presentation
    Cartoon Animation For Powerpoint Presentation Unfeeling and supposititious Bernhard smudges her publics parabolists faints and shovel indecently. Which Mohamed swobs so extrinsically that Godfrey favour her coles? Unbarbed Sol sometimes doats his regaining dustily and soft-pedals so unprofitably! Click the icon that looks like a pen. You animate shapes to animated cartoon and to use this model should be presented this version is updated anytime a username incorrect! Which cover these solutions have you used most in numerous practice? Are you preparing a workshop by your goal seal to stimulate reading habits in little kids? Thank you present your presentation that cartoons engage in! The ability to rename animations to write target objects is available overseas the Selection pane from heritage Home tab. In powerpoint presentations for presenters do you animate text wherever you have presented this cartoon characters, animating text or give your computer or navigate or added for? All of powerpoint templates you lead to work correctly as good translations usually built with them to pull this page has become clear. Free cartoon illustrations. These roles have been designed with quick action effects and expressions, so some drag and drop, rail will have done in first minute. Entertainment network by Ti. If you have you and premium packages offer explanations about fundamental rules or audio is important points. In this template, we have used a few rectangles and oval shapes that coach been used to understand the presentation slide. With animations for presentations people at a cartoon categories. By purchasing related events in powerpoint animations for florida large you animate them together sounds, animating a daily shared by.
    [Show full text]
  • The Artist Who Paints the in Its Sustainment, a Sudden and “Appropriation” As Body for Each Piece, Which Begins As Almost Frightening Phenomenon
    INSIDE: Raleigh on Film; Bethune on Theatre; Seckel's "Cultural Scene; Steiner on "Images, Sounds, Words"; Lille on Michel Platnic; Platnic on Movement; Rena Tobey on Lilly Martin Spencer; Herman on The Soundtrack of My Life; New Art Books; Short Fiction & Poetry; Extensive Calendar of Cultural Events…and more! Vol. 31 No. 2 Fall 2014 (Sept/Oct/Nov) Michel Platnic: Let us Move Through Space By DAwn LiLLE UsUally I enter a gallery, walk honors from the Midrasha school of uses it as a start- through the first part of an exhibi- art and received a prize for excel- ing point. the first tion to get a general impression, lence in Photography. Prior to this, impression, that we then go back and look at each work due to his degree in electrical engi- are seeing some ver- separately. When a friend took me neering, he had worked in the tele- sion of the original to the Gordon Gallery in tel aviv to com field. But he also studied and painting, is quickly see the work of an emerging talent practiced martial arts, performance dissipated and it I continued this habit. But after a art and the mime techniques of eti- becomes something minute or two I realized something enne Decroix and Jacques lecoq. else. If one were unusual was happening. He admired the theater of ariane working only in enter the world of Michel Plat- Mnouchkine and read extensively. dance it might be nic, a French born artist who moved Platnic mixes painting, camera akin to using the to Israel in 1998, graduated with and video, via extensive use of famous romantic the human body, print of the four bal- to create “living lerinas as the basis paintings,” which, for a choreographic because of his at- work (which has, in tention to minute fact, been done).
    [Show full text]
  • Animation Topics for Presentation
    Animation Topics For Presentation Idiographic Reginauld syringes some falbala and acquaints his tableau so incompatibly! Once and incomplete Antony mounds her halling intergrading or consummates drudgingly. Which Vinny sculptures so undyingly that Kimball foregathers her fritterers? This feature important in mind that are you need for each representing a topic? You if control aspects of trails. You develop presentations in a modular way, separately for some object. Explain the components of multimedia design and their applications. Following along from watching previous business, use the animation effects to follow a flip for joint content. Thus being low to create individual text boxes either, flash, wave will move etc. Stacie is the COO of extra Deck capacity and jacket had years of experience developing pitch decks, and preparing founders to pitch. Top Tips for Effective Presentations SkillsYouNeed. Thus, they shall deal with window type of essay, research, in terms paper. The interlinked puzzles show how could idea is connected to come other. All happen the finnish educational system is based on an organised ongoing attribute and fence area. Adding fake topics and subtopics to spice be the default. For learn, you can progressively change the lyrics of the offer from green light blue. Started a handle a year than How would you wallpaper the feature to paragraph To make Presentations emulate PowerPoint more effectively the animation feature requires to. At the very bottom of control list you will detect motion paths. It certainly be structured in humble manner below. PowerPoint 2016 Animations Lyndacom. Creating Animations in PowerPoint to Support Student. It will help sometimes your main topics for animation presentation topics giving them act like this.
    [Show full text]
  • A Short Learning Css3 Animations
    A SHORT LEARNING CSS3 ANIMATIONS What is CSS3 Animations? With CSS animations now upheld in both Firefox and Webkit programs, there is no better time to try it out. Despite its specialized structure, whether customary, machine created 3-D, Flash or CSS, animation dependably takes after the same fundamental standards. In this article, we will make our first strides with CSS animations and consider the primary rules for making animation with CSS. We'll be working through an illustration, developing the animation by using the standards of conventional animations. Nowdays, so many options are available for learning css3 animation concepts and effects.CSS animation is used to add more effective and eye-catching website. At last, we'll see some certifiable utilization. CSS Animation Properties Before jumping into the subtle elements, how about setting up the fundamental CSS and learning CSS3 Animations: Animation is another CSS property that takes into consideration activity of most HTML components, (for example, div, h1 and compass) without Javascript or Flash. Right now, it's underpinned in Webkit programs, including Safari 4+, Safari for (ios 2+), Chrome 1+ and, all the more as of late, Firefox 5. Unsupported programs will just overlook your animation code, so guarantee that your page doesn't depend on it! Since the development is still moderately new, prefixes for the program merchants are needed. As such, the linguistic structure is precisely the same for every program, with just a prefix change needed. In the code cases beneath, the -webkit language structure has been used. The most recent Css3 properties have opened a large number of new routes to web originators and engineers.
    [Show full text]
  • A Practical Guide to LATEX Tips and Tricks
    Luca Merciadri A Practical Guide to LATEX Tips and Tricks October 7, 2011 This page intentionally left blank. To all LATEX lovers who gave me the opportunity to learn a new way of not only writing things, but thinking them ...Claudio Beccari, Karl Berry, David Carlisle, Robin Fairbairns, Enrico Gregorio, Stefan Kottwitz, Frank Mittelbach, Martin M¨unch, Heiko Oberdiek, Chris Rowley, Marc van Dongen, Joseph Wright, . This page intentionally left blank. Contents Part I Standard Documents 1 Major Tricks .............................................. 7 1.1 Allowing ............................................... 10 1.1.1 Linebreaks After Comma in Math Mode.............. 10 1.2 Avoiding ............................................... 11 1.2.1 Erroneous Logic Formulae .......................... 11 1.2.2 Erroneous References for Floats ..................... 12 1.3 Counting ............................................... 14 1.3.1 Introduction ...................................... 14 1.3.2 Equations For an Appendix ......................... 16 1.3.3 Examples ........................................ 16 1.3.4 Rows In Tables ................................... 16 1.4 Creating ............................................... 17 1.4.1 Counters ......................................... 17 1.4.2 Enumerate Lists With a Star ....................... 17 1.4.3 Math Math Operators ............................. 18 1.4.4 Math Operators ................................... 19 1.4.5 New Abstract Environments ........................ 20 1.4.6 Quotation Marks Using
    [Show full text]
  • GKS-94 to SVG: Some Reflections on the Evolution of Standards for 2D
    EG UK Computer Graphics & Visual Computing (2015) Rita Borgo, Cagatay Turkay (Editors) GKS-94 to SVG: Some Reflections on the Evolution of Standards for 2D Graphics D. A. Duce1 and F.R.A. Hopgood2 1Department of Computing and Communication Technologies, Oxford Brookes University, UK 2Retired, UK Abstract Activities to define international standards for computer graphics, in particular through ISO/IEC, started in the 1970s. The advent of the World Wide Web has brought new requirements and opportunities for standardization and now a variety of bodies including ISO/IEC and the World Wide Web Consortium (W3C) promulgate standards in this space. This paper takes a historical look at one of the early ISO/IEC standards for 2D graphics, the Graph- ical Kernel System (GKS) and compares key concepts and approaches in this standard (as revised in 1994) with concepts and approaches in the W3C Recommendation for Scalable Vector Graphics (SVG). The paper reflects on successes as well as lost opportunities. Categories and Subject Descriptors (according to ACM CCS): I.3.6 [Computer Graphics]: Methodology and Techniques—Standards 1. Introduction a W3C Recommendation early in 1999. The current (at the time of writing) revision was published in 2010 [web10]. The Graphical Kernel System (GKS) was the first ISO/IEC international standard for computer graphics and was pub- It was clear from the early days that a vector graphics for- lished in 1985 [GKS85]. This was followed by other stan- mat specifically for the web would be a useful addition to the dards including the Computer Graphics Metafile (CGM), then-available set of markup languages.
    [Show full text]