Dr. Wang's Palo Alto Tiny Basic

Total Page:16

File Type:pdf, Size:1020Kb

Dr. Wang's Palo Alto Tiny Basic SOFTWARE SECTION MICROCOMPUTER DEVELOPMENT SOFTWARE DR. WANG'S PALO ALTO TINY BASIC By Roger Rauskolb Tiny Basic was first proposed in Dr. Dobb's Journal. Variables Li-Chen Wang's version of Palo Alto Tiny Basic There are 26 variables denoted by letters A through originally appeared in Issue No.5, May 1976 of Dr. Z. There is also a single array @(1). The dimension of Dobb's Journal. A complete listing was printed, but Dr. this array (i.e., the range of value of the index 1) is set Wang did the assembly on an IBM computer and he automatically to make use of all the memory space defined different mnemonics. In order to assemble that is left unused by the program. (i.e., 0 through with an Intel Compatible Assembler a translation of SIZE/2, see SIZE function below.) most mnemonics had to be performed. I had developed my own system, which consists of two small p.c. boards, one containing the 8080 CPU, Functions 4k of 2708 type EROM and 1 K of RAM. The other For the time being, there are only 3 functions: PCB contained the RS-232 Interface using the Intel ABS(X) gives the absolute value of X. 8251. So I wanted to change the 1/0 section. RND(X) gives a random number between 1 and X If you want to change 1/0, all routines are contained (inclusive). in the OUTC and CH Kia routines. My system uses the SIZE gives the number of bytes left unused by the following configuration: program. 2708 EROMS OOOOH TO 07FFH 1k OF RAM 1000H TO 13FFH Arithmetic and Compare Operators 8251 DATA PORT OFAH 82-51 STATUS PORT I divide. Note that since we have integers only, 2/3=0. 27H = 2 stop bits parity disabled. Command * multiply. Instruction 8 bit characters. Baud Rate Factor of 04. - subtract. + add. Mode OCFH = No Hunt Mode. Not (RTS) forced Instruction to O. Receive Enabled Data Ter- > compare if greater than. minal Ready Transmit Enabled. < compare if less than. Transmitter Ready Status£it = Bit 0 (01 H) = compare if equal to. Note than to certain ver- Receiver ..Buffer Ready Status. Bit = Bit 1 (02H) sions of Basic "LET A=B=O" means "set both A and B to 0". To this version of Tiny Basic, it The program is contained in locations OOOOH to means "set A to the result of comparing B with 0768H. 0". In 1 K of RAM 847 bytes are left over for program. # compare if not equal to. Tiny Basic does not offer much in terms of functions > = compare if greater than or equal to. and general mathematical capabilities. But it is great to teach programming basics to children (and adults) and < = compare if less than or equal to. for games, since it has the RN 0 function. It takes up +, -, *, and I operations result in a value of between little memory space and executes a lot faster than -32767 and 32767. All compare operators result in a other basics. 1 if true and a 0 if not true. Dr. Wang was very helpful and assisted me all the way. Some errors were eliminated. I appreciate his Expressions help and he deserves a lot of credit for his implemen- Expressions are formed with numbers, variables, tation of Tiny Basic. and functions with arithmetic and compare operators See Microcomputer Software Depository Program between them. and - signs can also be used at the Index for Copies of this program. + beginning of an expression. The value of an expression THE TINY BASIC LANGUAGE is evaluated from left to right. except that * and I are always done first. and then + and -, and then com- Numbers pare operators. Parentheses can also be used to alter the order of evaluation. In Tiny Basic, all numbers are integers and must be Statements less than or equal to 32767. A Tiny Basic statement consists of a statement 92 INTERFACE AGE DECEMBER 1976 SOFTWARE SECTION MICROCOMPUTER DEVELOPMENT SOFTWARE number between 1 and 32767 followed by one or will produce the same output as before, except that more commands. Commands in the same statement there is no CR-LF after the last item is printed. This are separated by a semi-colon ";". "GOTO", "STOP", enables the program to continue printing on the same and "RETURN" commands must be the last command line with another "PRINT". in any given statement. PRINT A, B, #3, C, D, E, #10, F, G Program will print the values of A and B in 6 spaces, the values of C, D, and E in 3 spaces, and the values of F and G in A Tiny program consists of one or more 10 spaces. If there are not enough spaces specified for statements. When a direct command "RUN" is issued, a given value to be printed, the value will be printed the statement with the lowest statement number is with enough spaces anyway. executed first. then the one with the next lowest statement number, etc. However, the "GOTO", PRINT 'ABC', +-; 'XXX' "GOSUB", "STOP", and "RETURN" commands can will print the string "ABC", a CR without a LF, and then alter this normal sequence. Within the statement. ex- the string "XXX" (over the ABC) followed by a CR-LF. ecution of the commands is from left to right. The "IF" command can cause the execution of all the com- INPUT Command mands to its right in the same statement to be skipped INPUT A. B over. When this command is executed, Tiny Basic will print "A:" and wait to read in an expression from the input Commands device. The variable A will be set to the value of this Tiny Basic commands are listed below with expression. Then "B:" ·is printed and variable B is set to examples. Remember that commands can be the value of the next expression read from the input concatenated with semi-colons. In order to store the device. Note that not only numbers, but also statement. you must also have a statement number in expressions can be read as input. front of the commands. The statement number and the INPUT 'WHAT IS THE WEIGHT'A. "AND SIZE"B concatenation are not shown in the examples. This is the same as the command above, except the prompt "A:" is replaced by "WHAT IS THE WEIGHT:" REM or REMARK Command and the prompt "B:" is replaced by "AND SIZE:". REM anything goes Again, both single and double quotes can be used as This line will be ignored by TBI. long as they are matched. INPUT A, 'STRING', "ANOTHER STRING", B LET Command The strings and the have the same effect as in LET A=234-5*6, A=AI2, X=A-100, "PRINT". @(X+9)=A-1 will set the variable A to the value of the expression IF Command 234-5 * 6 (i.e., 204). set the variable A (again) to the IF A<B LET X=3; PRINT 'THIS STRING' value of the expression AI2 (i.e., 102). set the variable X to the value of the expression A-100 (i.e., 2). and will test the value of the expression A< B. If it is not then set the variable @(11) to 101 (where 11 is the zero (i.e., if it is true). the commands in the rest of this value of the expression X+9 and 101 is the value of statement will be executed. If the value of the the expression A -1 ). expression is zero (i.e., if it is not true). the rest of this statement will be skipped over and execution LET U=A#B, V=(A>B)*X+(A<B)*Y continues at next statement. Note that the word will set the variable U to either 1 or 0 depending on "THEN" is not used. whether A is not equal to or is equal to B; and set the variable V to either X, Y or 0 depending on whether A GOTO Command is greater than, less than, or equal to B. GOTO 120 PRINT Command will cause the execution to jump to statement 120. PRINT Note that GOTO command cannot be followed by a will cause a carriage-return (CR) and a line-feed (LF) on semi-colon and other commands. It must be ended with a CR. the output device. PRINT A * 3+ 1, "ABC 123 !@#", ' CBA ' GOTO A* 10+B will print the value of the expression A * 3 + 1 (i.e.,30n will cause the execution to jump to a different the string of characters "ABC 123 !@#", and the string statement number as computed from the value of the expression. " CBA ", and then a CR-LF. Note that either single or double quotes can be used to quote strings, but pairs must be matched. GOSUB and RETURN Commands PRINT A*3+1. "ABC 123 !@#", ' CBA " GOSUB command is similar to GOTO command 94 INTERFACE AGE DECEMBER 1976 SOFTWARE SECTION MICROCOMPUTER DEVELOPMENT SOFTWARE except that: a) the current statement number and When the paper tape is finished, turn it off and type a position within the statement is remembered; and b) a Control-O again. semi-colon and other commands can follow it in the same statement. Control-Shift-P's and turn off the punch. GOSUB 120 To read back such a paper tape, type "NEW," CR. and Control-?, then turn on the paper tape reader. will cause the execution to jump to statement 120. When the paper tape is finished, turn it off and type a GOSU B A * 10+ B Control-O.
Recommended publications
  • BASIC CODE 2010 Edition by the League of Minnesota Cities Duke Addicks, Special Counsel Rachel Carlson, Staff Attorney
    THE MINNESOTA BASIC CODE 2010 Edition By The League of Minnesota Cities Duke Addicks, Special Counsel Rachel Carlson, Staff Attorney Published by American Legal Publishing Corporation 432 Walnut Street, 12th Floor Cincinnati, Ohio 45202 Tel: (800) 445-5588 Fax: (513) 763-3562 E-Mail: [email protected] Internet: http://www.amlegal.com PREFACE TO THE MINNESOTA BASIC CODE, 2010 EDITION The Minnesota Basic Code This League of Minnesota Cities/American Legal Publishing (LMC/ALP) Minnesota Basic Code (MBC) is an effort to provide a modern and comprehensive code of ordinances for smaller Minnesota cities without the expense of a customized code of ordinances. Its provisions are also useful to all Minnesota cities that wish to have models for the basic city ordinances on the subjects contained in the code. The code reflects current state statutes, case law and rules through January, 2010. The MBC will be supplemented periodically to reflect legislative enactments and new case law and rules. The supplements will consist of new pages which will replace or be in addition to the pages contained in this edition. In addition, the supplements will contain new model ordinances that will be included into the MBC unless the city decides not to incorporate them into their code. Authors and Editors This Minnesota Basic Code is partly based on the Model Ordinance Code for Minnesota Cities, Revised Edition 1980, prepared by Orville C. Peterson, former Executive Director of the League of Minnesota Cities, and the 1989 Model Ordinance Code prepared by Thomas L. Grundhoefer, then Staff Attorney and now General Counsel for the League.
    [Show full text]
  • Lindoo2019 Miami Xojo Presentation
    Back to the Basics, in an Two Effort to Improve Student distinct retention in Intro to schools Programming Classes CS Dr. Ed Lindoo Associate Professor Computer Information Systems (CC&IS) 3 year average CS and CIS Drop/Fail rate • 3 year average • 50+ percent drop/fail rate in intro to programming class Two CIS classes taught by CS • Specifically CC&IS students were failing at a 62% rate! • Big problem! • If they fail this course, they don’t continue in the program • Represents a huge loss of revenue to the school • Intro to programming class taught by CS department • I was asked by our Dean to “Fix it” • Computer Science students and Information Systems students • Performed extensive research on why students fail. (business students) took the class together. • After sifting through all the research, I decided to go back to • Business students don’t have the strong technical skills to the basics, BASIC programing that is. jump into a Java or C++ course • I started thinking back to my days of BASIC and QBASIC • Certainly not as an intro class • Remember BASIC? • But that’s what was happening • Well that wasn’t going to cut it! • Further research found a common theme • Visual Programming Environments • Easier to understand languages. DON’T START WITH C++ • I thought long and hard about it • Re-wrote the entire course, Intro to Programming based on Xojo • Even though I had done a lot of work in VB.net, I felt like that was too heavy for this course • Ahh, but there’s a catch…………………isn’t there always? • Then I remembered back to my days of using Real Basic, so I • Must pass a Java course once they pass this class.
    [Show full text]
  • Programming Manual Version 2.0
    www.tinybasic.de programming manual version 2.0 TinyBasic Programming Manual Version 2.0 April 2008 altenburg © 2006-2008 by U. Altenburg CHAPTER 1 Introduction.....................................................8 EDITOR, COMPILER, DOWNLOAD, CONSOLE, SCOPE CHAPTER 2 Preprocessor……….........................................12 #TARGET, #INCLUDE, #DEFINE, #UNDEF, #IFDEF, #IFNDEF, #ELSE, #ENDIF CHAPTER 3 Variables and Types.......................................14 CHAR, BYTE, WORD, INTEGER, LONG, FLOAT, DATA, READ, RESTORE, LOAD, STORE, INC, DEC CHAPTER 4 Maths and Expressions..................................19 +, -, *, /, <, >, <=, >=, <>, <<, >>, (), [], NOT, AND, OR, XOR, MOD CHAPTER 5 Control Flow...................................................22 IF, THEN, ELSE, ELSIF, ENDIF, DO, LOOP, FOR, NEXT, WHILE, WEND, EXIT, ON, GOTO, GOSUB, RETURN, WAIT, PAUSE TinyBasic Programming www.tinybasic.de 5 CHAPTER 6 Functions.......................................................28 LO, HI, MIN, MAX, LEN, POS, VAL, PI, SIN, COS, TAN, ATN, DEG, RAD, SQR, EXP, LOG, POW, ABS, INT, ROUND, POINT, PEEK, EOF CHAPTER 7 Input and Output...........................................33 PUT, GET, PRINT, INPUT, OPEN, CLOSE, FLUSH, FIND, INITGSM, SENDSMS, RECVSMS, ERR, CR, NL, CHR, HEX, SPC, TAB, USING CHAPTER 8 Date and Time................................................40 SETCLOCK, DATE, TIME, HOUR, MINUTE, SECOND, DAY, MONTH, YEAR CHAPTER 9 Displays and Graphics...................................42 SETDISPLAY, SETSYMBOL, CLS, FONT, COLOR, PLOT, MOVE, DRAW, FRAME,
    [Show full text]
  • Microsoft Small Basic
    Microsoft Small Basic An introduction to Programming Chapter 1 An Introduction Small Basic and Programming Computer Programming is defined as the process of creating computer software using programming languages. Just like we speak and understand English or Spanish or French, computers can understand programs written in certain languages. These are called programming languages. In the beginning there were just a few programming languages and they were really easy to learn and comprehend. But as computers and software became more and more sophisticated, programming languages evolved fast, gathering more complex concepts along the way. As a result most modern programming languages and their concepts are pretty challenging to grasp by a beginner. This fact has started discouraging people from learning or attempting computer programming. Small Basic is a programming language that is designed to make programming extremely easy, approachable and fun for beginners. Small Basic’s intention is to bring down the barrier and serve as a stepping stone to the amazing world of computer programming. The Small Basic Environment Let us start with a quick introduction to the Small Basic Environment. When you first launch SmallBasic, you will see a window that looks like the following figure. Figure 1 - The Small Basic Environment This is the Small Basic Environment, where we’ll write and run our Small Basic programs. This environment has several distinct elements which are identified by numbers. The Editor, identified by [1] is where we will write our Small Basic programs. When you open a sample program or a previously saved program, it will show up on this editor.
    [Show full text]
  • BASIC Session
    BASIC Session Chairman: Thomas Cheatham Speaker: Thomas E. Kurtz PAPER: BASIC Thomas E. Kurtz Darthmouth College 1. Background 1.1. Dartmouth College Dartmouth College is a small university dating from 1769, and dedicated "for the educa- tion and instruction of Youth of the Indian Tribes in this Land in reading, writing and all parts of learning . and also of English Youth and any others" (Wheelock, 1769). The undergraduate student body (now nearly 4000) outnumbers all graduate students by more than 5 to 1, and majors predominantly in the Social Sciences and the Humanities (over 75%). In 1940 a milestone event, not well remembered until recently (Loveday, 1977), took place at Dartmouth. Dr. George Stibitz of the Bell Telephone Laboratories demonstrated publicly for the first time, at the annual meeting of the American Mathematical Society, the remote use of a computer over a communications line. The computer was a relay cal- culator designed to carry out arithmetic on complex numbers. The terminal was a Model 26 Teletype. Another milestone event occurred in the summer of 1956 when John McCarthy orga- nized at Dartmouth a summer research project on "artificial intelligence" (the first known use of this phrase). The computer scientists attending decided a new language was needed; thus was born LISP. [See the paper by McCarthy, pp. 173-185 in this volume. Ed.] 1.2. Dartmouth Comes to Computing After several brief encounters, Dartmouth's liaison with computing became permanent and continuing in 1956 through the New England Regional Computer Center at MIT, HISTORY OF PROGRAMMING LANGUAGES 515 Copyright © 1981 by the Association for Computing Machinery, Inc.
    [Show full text]
  • Learning to Code
    PART ILEARNING TO CODE How Important is Programming? “To understand computers is to know about programming. The world is divided… into people who have written a program and people who have not.” Ted Nelson, Computer Lib/Dream Machines (1974) How important is it for you to learn to program a computer? Since the introduction of the first digital electronic computers in the 1940s, people have answered this question in surprisingly different ways. During the first wave of commercial computing—in the 1950s and 1960s, when 1large and expensive mainframe computers filled entire rooms—the standard advice was that only a limited number of specialists would be needed to program com- puters using simple input devices like switches, punched cards, and paper tape. Even during the so-called “golden age” of corporate computing in America—the mid- to late 1960s—it was still unclear how many programming technicians would be needed to support the rapid computerization of the nation’s business, military, and commercial operations. For a while, some experts thought that well-designed computer systems might eventually program themselves, requiring only a handful of attentive managers to keep an eye on the machines. By the late 1970s and early 1980s, however, the rapid emergence of personal computers (PCs), and continuing shortages of computer professionals, shifted popular thinking on the issue. When consumers began to adopt low-priced PCs like the Apple II (1977), the IBM PC (1981), and the Commodore 64 (1982) by the millions, it seemed obvious that ground-breaking changes were afoot. The “PC Revolution” opened up new frontiers, employed tens of thousands of people, and (according to some enthusiasts) demanded new approaches to computer literacy.
    [Show full text]
  • Full Form of Basic in Computer Language
    Full Form Of Basic In Computer Language Arrased and intransitive Obadiah resit: which Rockwell is soused enough? Prentiss safeguards her nitromethane yesternight, she posed it drastically. How rustling is Morley when comelier and canescent Ned depolarize some banana? Learning pascal are usually, the extern modifier is defined in basic computer full language of sense 3 Popular Types of Computer Language eduCBA. Instead of using machine code it uses a programming language. Programming in one natural language say taken full scope set the English language. BASIC was to early programming language that is still despise the simplest and most popular of programming languages BASIC stands for Beginner's. It is practically impossible to teach good programming to students that have had one prior exposure to BASIC In its classic form BASIC also. Computer Related Full Form PDF For BoardCompetitive Examination BAL Basic Assembly Language BER Bit less Rate BFD Binary File. Included in computer language of computers can be covered in. All Full Forms for Computer Subjectpdf Domain Name. The basics of BASIC the programming language of the 190s. Learn then to program drawings animations and games using JavaScript ProcessingJS or learn how these create webpages with HTML CSS You implement share. Basic Computer Terms. Important Full Forms Related to Programming Languages. BASIC Commands Dartmouth College. An html tags that time and that you are defined rules, compilers convert the habit to create a language of in basic form computer full control. What both RAM & ROM Mean their Business Chroncom. PHP Full Form GeeksforGeeks. What is C The Basics of C Programming HowStuffWorks.
    [Show full text]
  • Introduction to Programming with Xojo, Will Motivate You to Learn More About Xojo Or Any Other Programming Language
    Page 1 of 291 Introduction CONTENTS 1. Foreword 2. Acknowledgments 3. Conventions 4. Copyright & License Page 2 of 291 Foreword When you finish this book, you won’t be an expert developer, but you should have a solid grasp on the basic building blocks of writing your own apps. Our hope is that reading Introduction to Programming with Xojo, will motivate you to learn more about Xojo or any other programming language. The hardest programming language to learn is the first one. This book focuses on Xojo - because it’s easier to learn than many other languages. Once you’ve learned one language, the others become easier, because you’ve already learned the basic concepts involved. For example, once you know to write code in Xojo, learning Java becomes much easier, not only because the languages are similar and you already know about arrays, loops, variables, classes, debugging, and more. After all, a loop is a loop in any language. So while this book does focus on Xojo, the concepts that are introduced are applicable to many iii different programming languages. Where possible, some commonalities and differences are pointed out in notes. Before you get started, you’ll need to download and install Xojo to your computer. To do so, visit http://www.xojo.com and click on the download link. Xojo works on Windows, macOS and Linux. It is free to download, develop and test - you only need to buy a license if you want to compile your apps. Page 3 of 291 Acknowledgements Special thanks go out to Brad Rhine who wrote the original versions of this book with help from Geoff Perlman (CEO of Xojo, Inc).
    [Show full text]
  • B4X Booklets
    B4X Booklets B4X Getting started Copyright: © 2018 Anywhere Software Edition 1.4 Last update : 2018.11.28 Table of contents 2 B4X Getting started 1 B4X .............................................................................................................................................. 5 2 Getting started B4A..................................................................................................................... 6 2.1 B4A Trial version ................................................................................................................. 7 2.2 Installing B4A and Android SDK ........................................................................................ 8 2.2.1 Installing Java JDK .......................................................................................................... 8 2.2.2 Installing Android SDK ................................................................................................... 9 2.2.3 Installing B4A .................................................................................................................. 9 2.3 B4A Configure Paths in the IDE ........................................................................................ 11 2.4 Installation problem ........................................................................................................... 12 2.5 B4A Choice of the language .............................................................................................. 12 2.6 B4A Connecting a real device...........................................................................................
    [Show full text]
  • CI RD Straumann® Purebase
    Technical Information CI RD Straumann® PUREbase Basic Information This guide has been created for dental technicians and dentists working with the CI RD Straumann® PUREbase, designing screw-retained or cement-retained customized prosthetic reconstructions, such as copings, crowns or overdentures. It provides additional step-by-step information on working with the CI RD Straumann® PUREbase. Failure to follow the proce- dures outlined in these instructions may harm the patient and/or lead to any or all of the following complications: aspiration or swallowing of a component, breakage, infection. Note: Implant-borne superstructures require optimal oral hygiene on the patient’s part. This must be considered by all parties involved when planning and designing the restoration. Not all detailed information can be found in this guide. Reference to available Straumann procedure manuals will be made throughout this document. Contents 1 CI RD Straumann® PUREbase 2 2 System Overview 3 2.1 CI RD Straumann® PUREbase Implant Kit 3 2.2 Design 3 2.3 Digital Workflow (CADCAM) 4 3 Lab procedure for CI RD Straumann® PUREbase 5 3.1 Preparation 5 3.2 Open-tray Impression 5 3.3 Fabricating the master cast (with Sleeve and CI RD Repositionable Implant Analog) 6 3.4 Digital workflow 6 3.5 Bonding 7 3.6 Insertion (dental practice) 12 4 Product reference list 13 4.1 CI RD Straumann® PUREbase 13 4.2 Auxilliaries 13 1 1 CI RD Straumann® PUREbase The CI RD Straumann® PUREbase is a titanium base placed onto the Straumann® PURE Ceramic Implant to provide support for customized prosthetic restorations.
    [Show full text]
  • C++ GUI Programming with Qt 4, Second Edition by Jasmin Blanchette; Mark Summerfield
    C++ GUI Programming with Qt 4, Second Edition by Jasmin Blanchette; Mark Summerfield Publisher: Prentice Hall Pub Date: February 04, 2008 Print ISBN-10: 0-13-235416-0 Print ISBN-13: 978-0-13-235416-5 eText ISBN-10: 0-13-714397-4 eText ISBN-13: 978-0-13-714397-9 Pages: 752 Table of Contents | Index Overview The Only Official, Best-Practice Guide to Qt 4.3 Programming Using Trolltech's Qt you can build industrial-strength C++ applications that run natively on Windows, Linux/Unix, Mac OS X, and embedded Linux without source code changes. Now, two Trolltech insiders have written a start-to-finish guide to getting outstanding results with the latest version of Qt: Qt 4.3. Packed with realistic examples and in-depth advice, this is the book Trolltech uses to teach Qt to its own new hires. Extensively revised and expanded, it reveals today's best Qt programming patterns for everything from implementing model/view architecture to using Qt 4.3's improved graphics support. You'll find proven solutions for virtually every GUI development task, as well as sophisticated techniques for providing database access, integrating XML, using subclassing, composition, and more. Whether you're new to Qt or upgrading from an older version, this book can help you accomplish everything that Qt 4.3 makes possible. • Completely updated throughout, with significant new coverage of databases, XML, and Qtopia embedded programming • Covers all Qt 4.2/4.3 changes, including Windows Vista support, native CSS support for widget styling, and SVG file generation • Contains
    [Show full text]
  • Evolution of the Major Programming Languages
    COS 301 Programming Languages Evolution of the Major Programming Languages UMaine School of Computing and Information Science COS 301 - 2018 Topics Zuse’s Plankalkül Minimal Hardware Programming: Pseudocodes The IBM 704 and Fortran Functional Programming: LISP ALGOL 60 COBOL BASIC PL/I APL and SNOBOL SIMULA 67 Orthogonal Design: ALGOL 68 UMaine School of Computing and Information Science COS 301 - 2018 Topics (continued) Some Early Descendants of the ALGOLs Prolog Ada Object-Oriented Programming: Smalltalk Combining Imperative and Object-Oriented Features: C++ Imperative-Based Object-Oriented Language: Java Scripting Languages A C-Based Language for the New Millennium: C# Markup/Programming Hybrid Languages UMaine School of Computing and Information Science COS 301 - 2018 Genealogy of Common Languages UMaine School of Computing and Information Science COS 301 - 2018 Alternate View UMaine School of Computing and Information Science COS 301 - 2018 Zuse’s Plankalkül • Designed in 1945 • For computers based on electromechanical relays • Not published until 1972, implemented in 2000 [Rojas et al.] • Advanced data structures: – Two’s complement integers, floating point with hidden bit, arrays, records – Basic data type: arrays, tuples of arrays • Included algorithms for playing chess • Odd: 2D language • Functions, but no recursion • Loops (“while”) and guarded conditionals [Dijkstra, 1975] UMaine School of Computing and Information Science COS 301 - 2018 Plankalkül Syntax • 3 lines for a statement: – Operation – Subscripts – Types • An assignment
    [Show full text]