Home

CS4221 Foundations Of Computer Science

Prof. Conor Ryan

Preface

1. Introduction

2. Expressions

2.1 Locality of Reference

2.2 Prefix Notation

2.3 Converting from prefix notation to Abstract Syntax Trees

2.4 Stacks

2.5 Converting From Prefix to Infix: The Stack Method

3 Design

3.1 Functional Programming

3.2 Lists

3.3 Evaluating Expressions

3.4 Lambda Calculus

3.5 Racket – A freely downloadable Functional Programming language

3.6 Lifetime Diagrams

Local and Global Variables

4.1 Free and Bound variables in λ calculus

4.2 Formal identification of Free and Bound variables

4.3 Nested functions

4.4 Formal Notation

4.5 Order of Evaluation

Boolean Algebra and Recursion

5.1 Boolean and Relational Operators

5.2 Logic and  λ calculus

5.3 Using Conditionals in Functions

5.4 Recursion and Induction

5.5 Recursion and Lambda Calculus

<!– wp:paragra

–>