CSE 341 S. Tanimoto Vis Lang - 1 Programming Languages/Systems A set of possible computations (usually infinite) A set of primitive operations: e.g., arithmetic.

Slides:



Advertisements
Similar presentations
Floyd, Digital Fundamentals, 10 th ed EET 2259 Unit 2 Virtual Instruments Read Bishop, Chapter 2. Lab #2 and Homework #2 due next week. Quiz #1 next week.
Advertisements

Based on LabVIEW 2011 Student Edition
LabVIEW and G Graphical Programming Language By: Ramtin Raji Kermani.
Prepared by Arch PhD Antonino Di Raimo UNIVERSITETI POLIS SHKOLLA NDERKOMBETARE E ARKITEKTURES DHE POLITIKAVE URBANE Write the shape! (An introduction.
Chapter 8 Enhancing Learning with Visuals
Programming Languages Marjan Sirjani 2 2. Language Design Issues Design to Run efficiently : early languages Easy to write correctly : new languages.
Dobrin / Keller / Weisser : Technical Communication in the Twenty-First Century. © 2008 Pearson Education. Upper Saddle River, NJ, All Rights Reserved.
CHAPTER 1: AN OVERVIEW OF COMPUTERS AND LOGIC. Objectives 2  Understand computer components and operations  Describe the steps involved in the programming.
INTRODUCTION COMPUTATIONAL MODELS. 2 What is Computer Science Sciences deal with building and studying models of real world objects /systems. What is.
Representing programs Goals. Representing programs Primary goals –analysis is easy and effective just a few cases to handle directly link related things.
© Franz Kurfess Project Topics 1 Topics for Master’s Projects and Theses -- Winter Franz J. Kurfess Computer Science Department Cal Poly.
Lecture 7 Date: 23rd February
CSE S. Tanimoto Visual Languages 1 Visual Languages (Outline) Motivation Control Flow Diagrams Data Flow Diagrams Iconic Programming, Iconic Representation.
Chapter 2: Impact of Machine Architectures What is the Relationship Between Programs, Programming Languages, and Computers.
CSE S. Tanimoto Syntax and Types 1 Representation, Syntax, Paradigms, Types Representation Formal Syntax Paradigms Data Types Type Inference.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
Chapter 2: Developing a Program Extended and Concise Prelude to Programming Concepts and Design Copyright © 2003 Scott/Jones, Inc.. All rights reserved.
Programming Logic and Design, Introductory, Fourth Edition1 Understanding Computer Components and Operations (continued) A program must be free of syntax.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
CSE S. Tanimoto Visual Languages 1 Visual Languages (Outline) Motivation Control Flow Diagrams Data Flow Diagrams Iconic Programming, Iconic Representation.
Programming Logic and Design Fourth Edition, Introductory
C o n f i d e n t i a l Developed By Nitendra NextHome Subject Name: Data Structure Using C Title: Overview of Data Structure.
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
CS102 Introduction to Computer Programming
Powered by DeSiaMore1 Programming Concepts David T. Makota Department of Computing & Information Technology (CIT) The Institute of Finance Management Dar.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Course contents 1.Labview basics – virtual instruments, data flow, palettes 2.Structures – for, while, case,... – editing techniques 3.Controls&Indicators.
CSE 425: Intro to Programming Languages and their Design A Few Key Ideas No particular language is a prerequisite for this course –However you should be.
Introduction to Programming Lecture Number:. What is Programming Programming is to instruct the computer on what it has to do in a language that the computer.
1 CSE 2102 CSE 2102 CSE 2102: Introduction to Software Engineering Ch9: Software Engineering Tools and Environments.
Each VI has 2 Windows Front Panel User Interface (UI) –Controls = Inputs –Indicators = Outputs Block Diagram Graphical Code –Data travels on wires from.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming 1.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Chapter 1: A First Program Using C#. Programming Computer program – A set of instructions that tells a computer what to do – Also called software Software.
© 2001 Business & Information Systems 2/e1 Chapter 8 Personal Productivity and Problem Solving.
Copyright © 2007 Addison-Wesley. All rights reserved.1-1 Reasons for Studying Concepts of Programming Languages Increased ability to express ideas Improved.
1 Compiler Construction (CS-636) Muhammad Bilal Bashir UIIT, Rawalpindi.
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages.
ALGORITHM List of instructions for carrying out some process step by step. A sequence of instructions which has a clear meaning and can performed with.
ELEN 033 Lecture #1 Tokunbo Ogunfunmi Santa Clara University.
1 Text Reference: Warford. 2 Computer Architecture: The design of those aspects of a computer which are visible to the programmer. Architecture Organization.
Computing System Fundamentals 3.1 Language Translators.
C OMPUTING E SSENTIALS Timothy J. O’Leary Linda I. O’Leary Presentations by: Fred Bounds.
Virtual Instrumentation With LabVIEW. Front Panel Controls = Inputs Indicators = Outputs Block Diagram Accompanying “program” for front panel Components.
Engineering H192 - Computer Programming Gateway Engineering Education Coalition Lect 3P. 1Winter Quarter Structured Engineering Problem Solving and Logic.
1 Muhammed Al-MulhemVisual Languages Visual Programming Languages ICS 539 Introduction & Classification ICS Department KFUPM Sept. 1, 2007.
Program Development C# Programming January 30, 2007 Professor J. Sciame.
Visualization Four groups Design pattern for information visualization
 Programming - the process of creating computer programs.
CSE S. Tanimoto Visual Languages - 1 Visual Languages (Outline) Motivation Control Flow Diagrams Data Flow Diagrams Iconic Programming, Iconic Representation.
Programming in LabVIEW
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
Computer Literacy for IC 3 Unit 2: Using Productivity Software Chapter 10: Enhancing a Presentation © 2010 Pearson Education, Inc. | Publishing as Prentice.
Programming Language Concepts (CIS 635) Elsa L Gunter 4303 GITC NJIT,
Hierarchical Modeling.  Explain the 3 different types of model for which computer graphics is used for.  Differentiate the 2 different types of entity.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
Chapter 1: Introduction to Computers and Programming.
Victoria Ibarra Mat:  Generally, Computer hardware is divided into four main functional areas. These are:  Input devices Input devices  Output.
1 INTRODUCTION TO COMPUTER GRAPHICS. Computer Graphics The computer is an information processing machine. It is a tool for storing, manipulating and correlating.
Programming Logic and Design Seventh Edition Chapter 1 An Overview of Computers and Programming.
CSCI-235 Micro-Computer Applications
Presentation of Flowchart
Chapter 9 TURING MACHINES.
Visual Languages (Outline)
HIGH LEVEL SYNTHESIS.
Visual Languages (Outline)
Members: Keshava Shiva Sanjeeve Kareena
S.JOSEPHINE THERESA, DEPT OF CS, SJC, TRICHY-2
COMPUTER ORGANIZATION
Programming Logic and Design Eighth Edition
Presentation transcript:

CSE 341 S. Tanimoto Vis Lang - 1 Programming Languages/Systems A set of possible computations (usually infinite) A set of primitive operations: e.g., arithmetic operations, loading, storing, branching. A set of language primitives: e.g., identifiers, operators, etc., or menu items, components of rules, etc. A set of combining rules (grammar) used to form larger and larger expressions, and eventually, programs. A mapping from programs in the language to computations, usually expressed in terms of mappings from language primitives and combination schemata to primitive operations and partial computations.

CSE 341 S. Tanimoto Vis Lang - 2 Visual Languages A visual programming language is a programming language whose language primitives and/or combining rules are expressed graphically.

CSE 341 S. Tanimoto Vis Lang - 3 Rationale for Visual Languages Programs can be complex, and visual representations can sometimes be clearer. Programming is difficult for novices, and visual languages may be more intuitive. Visual languages can be specialized for various kinds of end-user configuration tasks. E.g., setting up a measurement apparatus or defining a spreadsheet for loan amortization.

CSE 341 S. Tanimoto Vis Lang - 4 Categories of Visual Languages Executable flow charts (control flow). Data-flow diagrams (data flow). Visual rule languages (rule-based). Programming by demonstration (direct manipulation). Spreadsheet or form-based (spreadsheet-based). Icon sequences.

CSE 341 S. Tanimoto Vis Lang - 5 Control Flow PICT -- Glinert and Tanimoto Intended for teaching novices about programming, as an alternative to starting with Pascal.

CSE 341 S. Tanimoto Vis Lang Start Stop add the blue register’s contents into the red register’s contents display the red register’s contents

CSE 341 S. Tanimoto Vis Lang - 7 Data Flow Similar to a high-level schematic diagram for a circuit. LabView from National Instruments. Prograph from Pictorius.

CSE 341 S. Tanimoto Vis Lang - 8 Visual Rules Visual AgenTalk (for AgentSheets, from U. of Colorado) Agent Builder (devel. at UW, also for AgentSheets).

CSE 341 S. Tanimoto Vis Lang - 9 Before After

CSE 341 S. Tanimoto Vis Lang - 10

CSE 341 S. Tanimoto Vis Lang - 11 Programming by Demonstration Gael Curry -- U of W, c1976. “Programming by Abstract Demonstration”. David Canfield Smith -- Stanford, c1976. “Pygmalion”. Xerox Parc: “Programming by Rehearsal”, c1984

CSE 341 S. Tanimoto Vis Lang - 12 Icon Sequences Marcia Runyan, UW PLAY: Pictorial Language for Animation by Youngsters.

CSE 341 S. Tanimoto Vis Lang - 13 Language Issues for VL Best paradigm: data flow? Visual representations: icon design, graph layout, chart style, metaphor (e.g. the desktop). Scaling up: information hiding, visual abstraction, when to show connections. Integration with the devel. env’t. CASE = Computer Aided Software Engineering.

CSE 341 S. Tanimoto Vis Lang - 14 Visualization of Execution Visual highlighting of the current location in the diagram. Visual display of internal data structures: the heap, the stack, the symbol table, local variables. (visual debugging) Algorithm animation: automatic and semi- automatic. (Self-explaining programs)... BALSA, TANGO, etc.

CSE 341 S. Tanimoto Vis Lang - 15 Visualization of Software Testing “What you see is what you test” -- project at Oregon State, under the direction of M. Burnett. Testedness is shown by coloring the cells of a spreadsheet according to the degree of testing it has undergone.

CSE 341 S. Tanimoto Vis Lang - 16 Visual Languages for People Pre-computer visual languages: hieroglyphics, Chinese, Bliss Symbols. Post-computer visual languages: MinSpeak, Elephant memory, Vedo-Vedi. A good computer-based visual language has not only a syntax and semantics for people but for the computer as well. Rather than a set of computations, we are concerned with an “ontology” or set of possible meanings.