More on Compilation - Start Syntax




CS152

Chris Pollett

Aug 30, 2021

Outline

Introduction

Preprocessors

steps in preprocessing

Linking, Loading, Overlays

Diagram showing the linking of a Fortran program

Quiz

Which of the following statements is true?

  1. It is impossible to create a programming language that is not Turing complete.
  2. Delaying decisions about program implementation until run time is known as late binding.
  3. von Neumann languages employ a computational model based on the recursive definition of functions.

Post-Compilation Assembly

Diagram showing the steps in compilation if one compiles first to assembly

Source-to-Source Translation and Bootstrapping

Diagram showing the steps in compilation if one compiles from one high level language to another Example Bootstrapping Compiler for Pascal

Just-in-time Compilation

Example JIT compilation of a Java program

Microcode

Programming Environments

How compilation works

Main Phases executed by a Compiler

Lexical and Syntax Analysis

Example Parse Tree

Parse Tree for our GCD program

More on Parsing