Maharishi University of Management

Computer Science

COMP 505: Advanced Programming Languages



Theme 1: Formal Syntax: Defining the Structure of Language
Lesson 1: Introduction to Syntax and Semantics: Form and Meaning
Lesson 2: Formal Syntax: The Elements and Structure of Language
Theme 2: Functional Programming in ML
Lesson 3: Functional Programming Concepts: Rishi, Devata and Chhandas
Lesson 4: Type Declarations: Ensuring Action in Accord with Natural Law
Lesson 5: Higher Order Functions I: Harnessing the Organizing Power of Natural Law
Lesson 6: Higher Order Functions II: Harnessing the Organizing Power of Natural Law
Lesson 7: Functional Programming: The Vedic Language of Nature
Theme 3: Denotational Semantics: Principles
Lesson 8: Introduction to Denotational Semantics: The Basis of All Possibilities
Lesson 9: Stores: Perceiving the Fullness of Life
Lesson 10: Environments & Bindings: Perceiving the Fullness of Life
Lesson 11: Abstractions: Operating at the Most Powerful Level of Creation
Theme 4: Denotational Semantics:  Applications
Lesson 12: Language Definition: The Constitution of the Universe
Lesson 13: Semantic Prototyping:  Knowledge has Organizing Power
Theme 5: Denotational Semantics:  Theory
Lesson 14: Continuation Semantics: Transformations in the Gap
Lesson 15: Continuation Semantics Models: Defining in terms of Wholeness
Lesson 16: Lambda Calculus I: Transformations, the Basis of Evolution
Lesson 17: Lambda Calculus II: Self-Referral and Recursion
SCHEDULE
 
Theme 1:  Formal Syntax: Defining the Structure of Language
4/16    -       Lesson 1
                Introduction to Syntax and Semantics: Form and Meaning
                Reading:  Watt--Chapter 1 - 2.1.6, pp. 1-26
                Reading:  [ "A stroll down Language Street", Brown]
                Reading:  [ "Functional Programming", Backus]
                Exercises 1.1, 1.2, 1.3, 2.1, 2.2, 2.3, 2.8, 2.9
4/20    -       Lesson 2
                Formal Syntax: The Elements and Structure of Language
                Reading:  Watt--Chapter 2.1.7 - 2.5, pp. 26-44
                Exercises 2.3, 2.7, 2.13, 2.15, 2.18, 2.21, 2.24
 
Theme 2:  Functional Programming in ML
4/25            -       Lesson 3
                Functional Programming Concepts: Rishi, Devata and Chhandas
                Reading: [Michaelson]--Chapter 9.1-11, pp. 207-221
                Exercises:  9.1, 2, 3abc
                Reading:  [Watt] --Chapter 13.1, pp. 230-232
4/30            -       Lesson 4
                Type Declarations: Ensuring Action in Accord with Natural Law
                Reading: [Michaelson]--Chapter 9.12-16, pp. 221-230
                Exercises:  9.3f, 5
                Reading:  [Watt] --Chapter 13.1, pp. 233-241
                Exercises: 13.4, 5
5/4             -       Lesson 5
                Higher Order Functions I: Harnessing the Organizing Power of Natural Law
                Exercises:  [Watt-1]  -- 13.7, 9, [10]
                Reading: [Michaelson]--Chapter 9.17-20, pp. 230-238
                Exercises:  9.6
5/9             -       Lesson 6
                Higher Order Functions II: Harnessing the Organizing Power of Natural Law
                Exercises:  [Watt-1]  -- 13.7, 9, [10]
5/14            -       Lesson 7
                Functional Programming: The Vedic Language of Nature
                Exercises:  [Watt-1]  -- 13.7, 9, [10]
 
Theme 3: Denotational Semantics: Principles
5/18            -       Lesson 8
                Introduction to Denotational Semantics: The Basis of All Possibilities
                Reading:  Watt--Chapter 3.1, pp. 49-56
                Exercises: 3.1, 3.2, 3.3, 3.4
5/23            -       Lesson 9
                Stores: Perceiving the Fullness of Life
                Reading:  Watt--Chapter 3.2, pp. 56-61
                Exercises: 3.5, 3.6
5/28            -       Lesson 10
                Environments & Bindings: Perceiving the Fullness of Life
                Reading:  Watt--Chapter 3.3, pp. 61-71
                Exercises: 3.8, 3.9, 3.10, 3.11
6/2             -       Mid-term Exam
                Reading:  Tennent--Chapter 13.1 - 13.3, pp. 211-223
6/4             -       Lesson 11
                Abstractions: Operating at the Most Powerful Level of Creation
                Reading:  Watt--Chapter 3.4,  pp. 71-80
                Exercises: 3.12, 3.14, 3.15, 3.17
Theme 4:  Denotational Semantics:  Applications
6/8             -       Lesson 12
                Language Definition: The Constitution of the Universe
                Reading:  Watt--Chapter 4.1, pp. 99-108
                Exercises 4.1, 4.2, 4.4, 4.5
6/13            -       Lesson 13
                Review Exam
                ~ Contextual Constraints:  Spontaneous Right Action
                ~ Reading:  Watt--Chapter 4.2 - 4.3, pp. 108-113
                Semantic Prototyping:  Knowledge has Organizing Power
                Reading:  Watt--Chapter 4.4 - 4.5
                Exercises (4.6), 4.8, 4.11, 4.12, 4.13, 4.9
                Assign: Denotational Semantics Lab
 
Theme 5: Denotational Semantics: Theory
6/18            -       Lesson 14
                Continuation Semantics: Transformations in the Gap
                Reading: Tennent--Chapter 13.1-3, pp. 211-223
                Exercises (13.6), 13.7, 13.8
6/22            -       Lesson 15
                Continuation Semantics Models: Defining in terms of Wholeness
                Reading: Tennent--Chapter 13.4,7, pp. 223-229, 235-6
                Exercises 13.9, 10, 12
                Assignment: Redefine IMP in continuation semantics model
6/27            -       Lesson 16
                Lambda Calculus I: Transformations, the Basis of Evolution
                Reading:  Watt--Chapter 5.1, pp. 122-130
                Exercises 5.1, 5.2, 5.3, 5.4, 5.5
7/2             -       Lesson 17
                Lambda Calculus II: Self-Referral and Recursion
                Reading:  Watt--Chapter 5.3, pp. 138-144
                Exercises 5.8, 5.9, 5.10ac, [5.11]
                Study Notes and Handout
7/7             -       Final Exam
                ________________________________________
Notation:
  • (xx) = Read for general concepts.

  •  

     

    [xx] = Skim pages, note topics, use for reference.

    {xx} = Skip pages.


     

    1