Programming—ALGOL


Book Description

Programming—ALGOL is an instructional book on how to write programs using the Algol language. The book starts with an introduction to computers. The Algol language, which runs on instructions typed or punched on strips of paper by the flexowriter, is explained. The text also compares the instructions used in Algol with words in the English language. The command instructions, calculation of numbers, and printing the output are discussed. After a brief introduction into what a program is, the book gives other commands to be added and improve the program. A sample program for repeating calculations is shown with different variables inputted to the program, and then arranging these for the output. The text then introduces the label and the block parts of the program, especially in procedures when several similar sets of commands are required. After the Algol syntax is explained, the different techniques used in programming are considered. In getting a problem into a form and making translation to Algol easier, the flow diagram is introduced. The process of actually running the program by compiling it, using data and program tapes, then begins. The text makes for interesting reading for computer programming instructors, students of introductory programing, and for readers who are interested in the history of computer programming.







Inductive Logic Programming


Book Description

Inductive logic programming is a new research area emerging at present. Whilst inheriting various positive characteristics of the parent subjects of logic programming an machine learning, it is hoped that the new area will overcome many of the limitations of its forbears. This book describes the theory, implementations and applications of Inductive Logic Programming.




Fundamentals of Spatial Information Systems


Book Description

The study and application of spatial information systems have been developed primarily from the use of computers in the geosciences. These systems have the principle functions of capturing, storing, representing, manipulating, and displaying data in 2-D and 3-D worlds. This book approaches its subject from the perspectives of informatics and geography, presenting methods of conceptual modeling developed in computer science that provide valuable aids for resolving spatial problems. This book is an essential textbook for both students and practitioners. It is indispensable for academic geographers, computer scientists, and the GIS professional. - Serves as the first comprehensive textbook on the field of Spatial Information Systems (also known as Geographic Information Systems) - Contains extensive illustrations - Presents numerous detailed examples




The World of Programming Languages


Book Description

The earth, viewed through the window of an airplane, shows a regularity and reptition of features, for example, hills, valleys, rivers, lakes, and forests. Nevertheless, there is great local variation; Vermont does not look like Utah. Similarly, if we rise above the details of a few programming languages, we can discern features that are common to many languages. This is the programming language landscape; the main features include variables, types, control structures, and input/output. Again, there is local variation; Pascal does not look like Basic. This work is a broad and comprehensive discussion of the principal features of the major programming languages. A Study of Concepts The text surveys the landscape of programming languages and its features. Each chapter concentrates on a single language concept. A simple model of the feature, expressed as a mini-language, is presented. This allows us to study an issue in depth and relative isolation. Each chapter concludes with a discussion of the way in which the concept is incorporated into some well-known languages. This permits a reasonably complete coverage of language issues.




The Design of Well-Structured and Correct Programs


Book Description

The major goal of this book is to present the techniques of top-down program design and verification of program correctness hand-in-hand. It thus aims to give readers a new way of looking at algorithms and their design, synthesizing ten years of research in the process. It provides many examples of program and proof development with the aid of a formal and informal treatment of Hoare's method of invariants. Modem widely accepted control structures and data structures are explained in detail, together with their formal definitions, as a basis for their use in the design of correct algorithms. We provide and apply proof rules for a wide range of program structures, including conditionals, loops, procedures and recur sion. We analyze situations in which the restricted use of gotos can be justified, providing a new approach to proof rules for such situations. We study several important techniques of data structuring, including arrays, files, records and linked structures. The secondary goal of this book is to teach the reader how to use the programming language Pascal. This is the first text to teach Pascal pro gramming in a fashion which not only includes advanced algorithms which operate on advanced data structures, but also provides the full axiomatic definition of Pascal due to Wirth and Hoare. Our approach to the language is very different from that of a conventional programming text.




The Burroughs Corporation and Its Innovative Architecture


Book Description

This book surveys the history of the Burroughs Corporation, from its earliest days as a computer system vendor up to the late 1990s after its merger with Univac Corporation to form Unisys. The Burroughs Corporation was one of the earliest manufacturers of large mainframe computers through its purchase of Datatron. Burroughs developed four more generations of mainframe computer systems, culminating in the B2x00/3x00/4x00 family of machines. It also developed one of the most innovative computer architectures in the B5x00/6x00/7x00 family. These systems featured direct execution of high-level language programs, stack-based and tagged architectures, multiprocessing, and early virtualization through descriptors. Burroughs’ early work on the ILLIAC IV led to the development of the D825 for SAGE and the B8500, the former a notable success and the latter less than successful. Burroughs’ foray into small computer systems was not financially viable, but its merger with Univac led to the formation of Unisys, where its advanced architectures survive today as counterpoints to IBM’s mainframe architectures—the two surviving manufacturers from the mainframe era.




A Primer on Scientific Programming with Python


Book Description

The book serves as a first introduction to computer programming of scientific applications, using the high-level Python language. The exposition is example and problem-oriented, where the applications are taken from mathematics, numerical calculus, statistics, physics, biology and finance. The book teaches "Matlab-style" and procedural programming as well as object-oriented programming. High school mathematics is a required background and it is advantageous to study classical and numerical one-variable calculus in parallel with reading this book. Besides learning how to program computers, the reader will also learn how to solve mathematical problems, arising in various branches of science and engineering, with the aid of numerical methods and programming. By blending programming, mathematics and scientific applications, the book lays a solid foundation for practicing computational science. From the reviews: Langtangen ... does an excellent job of introducing programming as a set of skills in problem solving. He guides the reader into thinking properly about producing program logic and data structures for modeling real-world problems using objects and functions and embracing the object-oriented paradigm. ... Summing Up: Highly recommended. F. H. Wild III, Choice, Vol. 47 (8), April 2010 Those of us who have learned scientific programming in Python ‘on the streets’ could be a little jealous of students who have the opportunity to take a course out of Langtangen’s Primer.” John D. Cook, The Mathematical Association of America, September 2011 This book goes through Python in particular, and programming in general, via tasks that scientists will likely perform. It contains valuable information for students new to scientific computing and would be the perfect bridge between an introduction to programming and an advanced course on numerical methods or computational science. Alex Small, IEEE, CiSE Vol. 14 (2), March /April 2012 “This fourth edition is a wonderful, inclusive textbook that covers pretty much everything one needs to know to go from zero to fairly sophisticated scientific programming in Python...” Joan Horvath, Computing Reviews, March 2015