Instructor:
Dr.
Ajay K. Gupta Topics
Covered:
Updated
10-Aug-2006
06/30/06
- Syllabus
discussion
- Discussion on general objectives,
requirements
- Learn concepts of
PLs, why?
- Application Domains
- PL evaluation criteria
- Influences on PL design,
Implementation systems
- compiling, interpretation,
hybrid
- Lecture
1 notes
- Read chapters 1 and
2 of the Sebesta textbook
- HW1 given
07/03/06
- Lexical Analysis
- FSMs
- Symbol Tables
- Hashing
- Do the homework practice
problems on FSMs as given in the class
- Kun
Wang's Lecture 2 notes
- Lecture
2 notes
- Read chapter 2, sections
3.1 and 3.2, sections 4.1 and 4.2 of
the Sebesta textbook
- To get going on HW1, detailed
discussion directly from chapter 2 of the book may not be covered in
class or covered later. You are still responsible for reading this material.
You may refer to Lecture
2a notes for this detailed discussion.
07/05/06
- FSM and lexical analysis
continued; Examples and homework practice problems from last lecture
may be contd
- Lex
- Wuwei
Shen's Lecture 3 notes
- Lecture
3 notes
- Read lex related documentation.
A concise manual is Lex - A
Lexical Analyzer Generator by Lesk and Schimdt
07/07/2006
- FSM Examples
- Implementation of FSMs
- No specific notes for this
lecture - please read the notes from lectures 1, 2 and 3 above.
- HW1 due date postponed to
Wed, July 12, 2006, start of class.
07/10/2006
- Lex contd
- Lecture
04 notes
- Evaluation criteria for
programming languages - readability, writeability, reliability, cost,
portability, generality,... see Lecture01
notes
- Start reading about lisp
- one internet link to get started is http://mypage.iu.edu/~colallen/lp/
Another link is CLISP: http://clisp.cons.org/
(note we have clisp on cs machines). Yet another link is Common Lisp
Hints: http://cvs.sourceforge.net/viewcvs.py/*checkout*/clisp/clisp/doc/LISP-tutorial.txt?rev=HEAD
07/12/2006
- HW1 part1 due (email as
well as hardcopy)
- Lisp
- no online lecture notes,
refer to notes from class
- read chapter 15 of the Sebesta
textbook (note: Scheme is very similar to Lisp).
- Some of the internet links
are http://mypage.iu.edu/~colallen/lp/
; CLISP: http://clisp.cons.org/
(note we have clisp on cs machines). Yet another link is Common Lisp
Hints: http://cvs.sourceforge.net/viewcvs.py/*checkout*/clisp/clisp/doc/LISP-tutorial.txt?rev=HEAD
07/14/2006
- no lecture (recall, lectures
are 12:30-3:00 on Mondays and Wednesdays)
- HW1 part2 due - atleast
email submission by 1:00pm; hardcopy may be submitted on Monday without
penalty provided email submission is in time.
07/17/2006
- HW2
out
- Lisp examples
- no online lecture notes,
refer to notes from class
- read chapter 15 of the Sebesta
textbook (note: Scheme is very similar to Lisp).
- Some of the internet links
are http://mypage.iu.edu/~colallen/lp/
; CLISP: http://clisp.cons.org/
(note we have clisp on cs machines). Yet another link is Common Lisp
Hints: http://cvs.sourceforge.net/viewcvs.py/*checkout*/clisp/clisp/doc/LISP-tutorial.txt?rev=HEAD
07/19/2006
- chapter 5 topics - names,
binding, scope, variable attributes, ...
- Lecture
8 notes
- read chapter 5 of the textbook.
07/24/2006
- scope, lifetime, named constants
- finishing up chapter 5
- data types - primitive,
ordinal, strings, arrays,...
- Lecture
9 notes
- Read chapter 6 of the textbook
07/26/06
- data types (chapter 6 contd)
- read the remaining sections yourselves.Lecture
9 notes
- Parsing - Context-free grammers
- Examination 1 - closed notes,
books, laptops, PDAs; calculator is allowed. It will cover material
covered in class till 07/24/06; An excellent way to prepare would be
to understand the material (in contrast to simply memorizing); understand
the implications of various formulations, similarities and differences
among various features and techniques; reading the appropriate sections
of the book; understanding and doing the homework and programming assignments
yourself (in contrast to simply modifying the examples slightly and
making them work). You are also responsible for any additional material
covered in lectures and homeworks outside of the first six chapters
of the textbook. See the lecture-wise topic list above for further details
on specific topics..
- G O O D
L U C K
07/31/2006
- Parsing
- CFG
- YACC/Bison...
- Lecture
11 notes
08/02/2006
- substitute to cover the
class
- class cancelled
- read chapter 7 of the textbook
08/072006
- expressions
- assignment statements
- control structures - selection
statements (2-way)
- Lecture
12 notes
- read chapters 7 and 8 of
the textbook
08/09/2006
- statement-level control
structures (selection/iterative)
- read chapter 8 of the textbook
- unit-level control structures
(subPrograms)
- read chapter 9 of the textbook
- Lecture 13 notes - controlStructs
- stmt-level
<----> unit-level
08/14/2006
- concurrency
- exception & event handling
- Lecture 14 notes - concurrency
<------> exception/event
handling
- read chapters 13 and 14
of the textbook
08/16/2006
- Exam2
- Closed books, notes, PDAs
and laptops; An excellent way to prepare would be to understand the
material (in contrast to simply memorizing); understand the implications
of various formulations, similarities and differences among various
features and techniques; reading the appropriate sections of the book;
understanding and doing the homework and programming assignments yourself
(in contrast to simply modifying the examples slightly and making them
work). Exam2 will
be a comprehensive exam which includes topics covered in 06/30/2006
- 08/14/2006 lectures essentially from chapters 1 to 9, and 13 to 15
of the textbook (you are also responsible for any additional material
covered outside of these chapters in lectures and homeworks, such as
regular expressions, lex, CFG, yacc, lisp, etc). See
the lecture-wise topic list above for further details on specific topics..
- G O O D
L U C K
08/18/2006
- Concluding discussions.
- Cleaning up of the semester
work...
08/19/2006 and onwards
|