Abstracting Away the Machine

Abstracting Away the Machine PDF Author: Mark Jones Lorenzo
Publisher: Independently Published
ISBN: 9781082395949
Category :
Languages : en
Pages : 326

Get Book

Book Description
At the dawn of the computer age, an elite development team at IBM built the most influential computer programming language in history: FORTRAN. Abstracting Away the Machine tells the epic story of how they did it--and what happened next. Over the past six decades, programming languages like ALGOL, BASIC, C/C++, COBOL, Java, LISP, LOGO, Pascal, PL/I, Python, Visual Basic, and many others opened up the field of computer science, and of computer programming in general, to the masses. But all of these high-level languages (HLLs)--computer languages that automate, hide, or otherwise abstract away the underlying operations of the machine--owe a huge debt of gratitude to FORTRAN (FORmula TRANslation), the first HLL to achieve widespread adoption. Many programming practices that we take for granted now came about as a result of FORTRAN. Created over a three-year period at IBM by a development team led by a brilliant but wayward mathematician named John W. Backus, FORTRAN was implemented initially on the IBM 704 mainframe computer in the mid-1950s, with dialects of the language quickly spreading thereafter to other platforms. FORTRAN's powerful compiler, which translated human-readable code into code a computer could understand, produced incredibly clean and optimized standalone executable programs, all of which could be run independently of the compiler, setting the standard for decades to come--and overcoming the doubts of many skeptics along the way, who thought the FORTRAN project would never succeed. In the 1960s the language was standardized, with machine-dependent commands excised, and many platform-independent implementations followed. With the language now portable, able to run on any computer (at least in theory), FORTRAN, almost by accident, secured a stranglehold in the fields of science and engineering. The language also came to dominate in the supercomputing industry. But FORTRAN, a blue-collar workhorse more concerned with results than with style, was a victim of its own success--the language sowed the seeds of its own demise. New high-level languages sprouted up, stealing the good bits from FORTRAN while simultaneously defining themselves in opposition to it. FORTRAN had become the foil. As these new languages pierced the cutting edge of the programming landscape, they redefined computing paradigms (e.g., with structured programming, object-oriented programming, and the like), and FORTRAN--though eventually (and repeatedly) modernized and formally renamed Fortran--struggled to keep up through multiple standardization efforts, finally ceding significant ground to its successors as it slowly withdrew from the spotlight. To add insult to injury, even John Backus eventually turned against his creation. This is not a book on how to program in FORTRAN, nor is it a technical manual. Rather, the focus in Abstracting Away the Machine, which chronicles the complete history and development of the FORTRAN programming language, is set squarely on telling three interlocking stories: (1) How an elite group of computing trailblazers built FORTRAN, (2) Why the conditions at the time were ripe for them to succeed, and (3) What happened after they did. Tracing the long arc of FORTRAN's development and maturation is integral to understanding not only the history of programming but also the state of computer science today. The birth of FORTRAN planted a seed that led to the full flowering of high-level languages, since FORTRAN overcame initial skepticism by demonstrating to the world that a well-made HLL really could abstract away the machine.

Abstracting Away the Machine

Abstracting Away the Machine PDF Author: Mark Jones Lorenzo
Publisher: Independently Published
ISBN: 9781082395949
Category :
Languages : en
Pages : 326

Get Book

Book Description
At the dawn of the computer age, an elite development team at IBM built the most influential computer programming language in history: FORTRAN. Abstracting Away the Machine tells the epic story of how they did it--and what happened next. Over the past six decades, programming languages like ALGOL, BASIC, C/C++, COBOL, Java, LISP, LOGO, Pascal, PL/I, Python, Visual Basic, and many others opened up the field of computer science, and of computer programming in general, to the masses. But all of these high-level languages (HLLs)--computer languages that automate, hide, or otherwise abstract away the underlying operations of the machine--owe a huge debt of gratitude to FORTRAN (FORmula TRANslation), the first HLL to achieve widespread adoption. Many programming practices that we take for granted now came about as a result of FORTRAN. Created over a three-year period at IBM by a development team led by a brilliant but wayward mathematician named John W. Backus, FORTRAN was implemented initially on the IBM 704 mainframe computer in the mid-1950s, with dialects of the language quickly spreading thereafter to other platforms. FORTRAN's powerful compiler, which translated human-readable code into code a computer could understand, produced incredibly clean and optimized standalone executable programs, all of which could be run independently of the compiler, setting the standard for decades to come--and overcoming the doubts of many skeptics along the way, who thought the FORTRAN project would never succeed. In the 1960s the language was standardized, with machine-dependent commands excised, and many platform-independent implementations followed. With the language now portable, able to run on any computer (at least in theory), FORTRAN, almost by accident, secured a stranglehold in the fields of science and engineering. The language also came to dominate in the supercomputing industry. But FORTRAN, a blue-collar workhorse more concerned with results than with style, was a victim of its own success--the language sowed the seeds of its own demise. New high-level languages sprouted up, stealing the good bits from FORTRAN while simultaneously defining themselves in opposition to it. FORTRAN had become the foil. As these new languages pierced the cutting edge of the programming landscape, they redefined computing paradigms (e.g., with structured programming, object-oriented programming, and the like), and FORTRAN--though eventually (and repeatedly) modernized and formally renamed Fortran--struggled to keep up through multiple standardization efforts, finally ceding significant ground to its successors as it slowly withdrew from the spotlight. To add insult to injury, even John Backus eventually turned against his creation. This is not a book on how to program in FORTRAN, nor is it a technical manual. Rather, the focus in Abstracting Away the Machine, which chronicles the complete history and development of the FORTRAN programming language, is set squarely on telling three interlocking stories: (1) How an elite group of computing trailblazers built FORTRAN, (2) Why the conditions at the time were ripe for them to succeed, and (3) What happened after they did. Tracing the long arc of FORTRAN's development and maturation is integral to understanding not only the history of programming but also the state of computer science today. The birth of FORTRAN planted a seed that led to the full flowering of high-level languages, since FORTRAN overcame initial skepticism by demonstrating to the world that a well-made HLL really could abstract away the machine.

IBM's 360 and Early 370 Systems

IBM's 360 and Early 370 Systems PDF Author: Emerson W. Pugh
Publisher: MIT Press
ISBN: 9780262161237
Category : Computers
Languages : en
Pages : 860

Get Book

Book Description
No product offering has had greater impact on the computer industry than the IBM System/360. This book describes the creation of this remarkable system and the developments it spawned, including its successor, System/370.

Endless Loop

Endless Loop PDF Author: Mark Jones Lorenzo
Publisher:
ISBN: 9781974277070
Category :
Languages : en
Pages : 190

Get Book

Book Description
"Endless Loop" chronicles the complete history of the BASIC programming language--from its humble beginnings at Dartmouth College, to its widespread adoption and dominance in education, to its decline and subsequent modern rebirth.In the early morning hours of May 1, 1964, Dartmouth College birthed fraternal twins: BASIC, the Beginner's All-purpose Symbolic Instruction Code programming language, and, simultaneously, the Dartmouth Time-Sharing System (DTSS). It hadn't been an easy birth, and the gestation period was likewise difficult. BASIC was primarily the idea of one man, mathematics professor John Kemeny, a brilliant Hungarian mathematician who had once been an assistant to Albert Einstein, while the DTSS satisfied the vision of another, mathematics and statistics professor Thomas Kurtz, who had brought a democratizing spirit to Dartmouth's campus in the form of free computing for all.BASIC and DTSS caught on at Dartmouth quickly, with a vast majority of undergraduates (and faculty) making use of the computer system via teletypewriters only several years after its inception. But by the early 1970s, with the personal computer revolution fast approaching, Kemeny and Kurtz began to lose control over BASIC as it achieved widespread popularity outside of Dartmouth. The language was being adapted to run on a wide variety of computers, some much too short of memory to contain the full set of Dartmouth BASIC features. Most notably, Microsoft built its business on the back of ROM-based BASIC interpreters for a variety of microcomputers. Although the language was ubiquitous in schools by the early 1980s, it came under attack by such notables as computer scientist Edsger W. Dijkstra for its lack of structure as well as by Kemeny and Kurtz themselves, who viewed non-Dartmouth "Street BASIC" as blasphemous and saw it as their mission to right the ship through language standardization and the release of True BASIC. But by then it was too late: the era of BASIC's global dominance was over.In "Endless Loop," author Mark Jones Lorenzo documents the history and development of Dartmouth BASIC, True BASIC, Tiny BASIC, Microsoft BASIC--including Altair BASIC, Applesoft BASIC, Color BASIC, Commodore BASIC, TRS-80 Level II BASIC, TI BASIC, IBM BASICA/GW-BASIC, QuickBASIC/QBASIC, Visual Basic, and Small Basic--as well as 9845 BASIC, Atari BASIC, BBC BASIC, CBASIC, Locomotive BASIC, MacBASIC, QB64, Simons' BASIC, Sinclair BASIC, SuperBASIC, and Turbo Basic/PowerBASIC, among a number of other implementations.The ascendance of BASIC paralleled the emergence of the personal computer, so the story of BASIC is first and foremost a story--actually, many interlocking stories--about computers. But it is also a tale of talented people who built a language out of a set of primal ingredients: sweat, creativity, rivalry, jealousy, cooperation, and plain hard work, and then set the language loose in a world filled with unintended consequences. How those unintended consequences played out, leading to the demise of the most popular computer language the world has ever known, is the focus of "Endless Loop."

Abstract Machine Models for Parallel and Distributed Computing

Abstract Machine Models for Parallel and Distributed Computing PDF Author: M. Kara
Publisher: IOS Press
ISBN: 9789051992670
Category : Computers
Languages : en
Pages : 236

Get Book

Book Description
Abstract Machine Models have played a profound though frequently unacknowledged role in the development of modern computing systems. They provide a precise definition of vital concepts, allow system complexity to be managed by providing appropriate views of the activity under consideration, enable reasoning about the correctness and quantitative performance of proposed problem solutions, and encourage communication through a common medium of expression. Abstract Models in Parallel and Distributed computing have a particularly important role in the development of contemporary systems, encapsulating and controlling an inherently high degree of complexity. The Parallel and Distributed computing communities have traditionally considered themselves to be separate. However, there is a significant contemporary interest in both of these communities in a common hardware model; a set of workstation-class machines connected by a high-performance network. The traditional Parallel/Distributed distinction therefore appears under threat.

IBM's Early Computers

IBM's Early Computers PDF Author: Charles J. Bashe
Publisher: Mit Press
ISBN: 9780262523936
Category : Computers
Languages : en
Pages : 735

Get Book

Book Description
The challenges faced by IBM's research and development laboratories, the technological paths they chose, and how these choices affected the company and the computer industry.

Abstract State Machines 2004. Advances in Theory and Practice

Abstract State Machines 2004. Advances in Theory and Practice PDF Author: Wolf Zimmermann
Publisher: Springer Science & Business Media
ISBN: 3540220941
Category : Computers
Languages : en
Pages : 246

Get Book

Book Description
This book constitutes the refereed proceedings of the 11th International Workshop on Abstract State Machines, ASM 2004, held in Lutherstadt Wittenberg, Germany, in May 2004. The 12 revised full research papers presented together with 4 invited papers were carefully reviewed and selected for inclusion in the book. The papers reflect state-of-the-art research and development of the abstract state machine method for the design and analysis of complex software and hardware systems. Besides theoretical results and methodological progress, applications in various fields are studied as well.

Abstract State Machines

Abstract State Machines PDF Author: Egon Börger
Publisher: Springer Science & Business Media
ISBN: 364218216X
Category : Computers
Languages : en
Pages : 438

Get Book

Book Description


Functional and Logic Programming

Functional and Logic Programming PDF Author: Matthias Blume
Publisher: Springer
ISBN: 3642122515
Category : Computers
Languages : en
Pages : 355

Get Book

Book Description
This book constitutes the refereed proceedings of the 10th International Symposium on Functional and Logic Programming, FLOPS 2010, held in Sendai, Japan, in April 2010. The 21 revised full papers presented together with 3 invited talks were carefully reviewed and selected from 49 submissions. The papers are organized in topical sections on types; program analysis and transformation; foundations; logic programming; evaluation and normalization; term rewriting; and parallelism and control.

Mastering Functional Programming

Mastering Functional Programming PDF Author: Anatolii Kmetiuk
Publisher: Packt Publishing Ltd
ISBN: 1788626036
Category : Computers
Languages : en
Pages : 372

Get Book

Book Description
Learn how functional programming can help you in deploying web servers and working with databases in a declarative and pure way Key Features Learn functional programming from scratch Program applications with side effects in a pure way Gain expertise in working with array tools for functional programming Book Description In large projects, it can get difficult keeping track of all the interdependencies of the code base and how its state changes at runtime. Functional Programming helps us solve these problems. It is a paradigm specifically designed to deal with the complexity of software development. This book will show you how the right abstractions can reduce complexity and make your code easy to read and understand. Mastering Functional Programming begins by touching upon the basics such as what lambdas are and how to write declarative code with the help of functions. It then moves on to more advanced concepts such as pure functions and type classes, the problems they aim to solve, and how to use them in real-world scenarios. You will also explore some of the more advanced patterns in the world of functional programming, such as monad transformers and Tagless Final. In the concluding chapters, you will be introduced to the actor model, implement it in modern functional languages, and explore the subject of parallel programming. By the end of the book, you will have mastered the concepts entailing functional programming along with object-oriented programming (OOP) to build robust applications. What you will learn Write reliable and scalable software based on solid foundations Explore the cutting edge of computer science research Effectively solve complex architectural problems in a robust way Avoid unwanted outcomes such as errors or delays and focus on business logic Write parallel programs in a functional style using the actor model Use functional data structures and collections in your day-to-day work Who this book is for If you are from an imperative and OOP background, this book will guide you through the world of functional programming, irrespective of which programming language you use.

Interactive Systems: Design, Specification, and Verification

Interactive Systems: Design, Specification, and Verification PDF Author: Chris J. Johnson
Publisher: Springer
ISBN: 3540455221
Category : Computers
Languages : en
Pages : 221

Get Book

Book Description
This book constitutes the thoroughly refereed post-proceedings of the 8th International Workshop on the Design, Specification, and Verification of Interactive Systems, DSV-IS 2001, held in Glasgow, Scotland, UK, in June 2001. The 12 revised full papers presented have gone through two rounds of reviewing, selection, and revision. The book offers topical sections on mobile interface design, context-sensitive interfaces, supervision and control systems, temporal and stochastic issues, and new perspectives.