Compilers - Principles, Techniques, & Tools
Chapter 1
Introduction
Programming languages are notations for describing computations to
people and to machines. The world as we know it depends on programming
languages, because all the software running on all the computers was written in
some programming language. But, before a program can be run, it first must be
translated into a form in which it can be executed by a computer.
The software systems that do this translation are called compilers.
This book is about how to design and implement compilers. We shall
dis-cover that a few basic ideas can be used to construct translators for a
wide variety of languages and machines. Besides compilers, the principles and
techniques for compiler design are applicable to so many other domains that they
are likely to be reused many times in the career of a computer scientist. The
study of compiler writing touches upon programming languages, machine
architecture, language theory, algorithms, and software engineering.
In this preliminary chapter, we introduce the different forms of
language translators, give a high level overview of the structure of a typical
compiler, and discuss the trends in programming languages and machine
architecture that are shaping compilers. We include some observations on the relationship
between compiler design and computer-science theory and an outline of the
applications of compiler technology that go beyond compilation. We end with a
brief outline of key programming-language concepts that will be needed for our
study of compilers.
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2023 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.