CSE614 Advanced Programming Languages (Spring `08)
Announcements
- Demo schedule:
- Simona Boboila: Deductive spreadsheets from rules---Mon 5/12 3:30
- Ahmad Esmaili: Debugging web scripting languages---Fri 05/09 2:00
- Andrew Gaun: Transforming logic programs into recursive functions plus memoization---Wed 5/14 1:30
- Navid Hamed Azimi: Dynamic programming on trees for biosequence analysis---Wed 5/14 12
- Sangwoo Im: Combining static and dynamic program slicing---Mon 5/12 1:30
- George Iordache: Spiral detection in heart simulation images---Mon 5/12 2:30
- Yury Puzis: Automating induction---Mon 5/12 4:00
- Anu Singh: Deductive sensor net with complexity guarantees---Mon 5/12 11:00
- Tuncay Tekle: Transforming constraint specifications into efficient algorithms---Mon 5/12 1:00
- Kristov Widak: Stream processing with rules for intrusion detection---Mon 5/12 3:00
- 5/7/08
-
Homework for week 14: (1) Complete a project report that includes a
complete problem specification, design, implementation, and tests with
a usage manual (it should be an assembly of your homeworks, plus tests
with a usage manual), submit the report, with source code and test
data, and presentation slides by May 12 (email a zip file of all), and
schedule a demo with me within the next week. (2) Carefully read my
"lecture notes" for week 11, on incrementalizing across object
abstraction, and mark any big things and little things that you think
should be improved. Please write clearly so it is readable. (3)
Write any comments you might have about the topics discussed in this
course and about the course. It can be as short as half a page or as
long as you like. Any comments about the "lecture notes" would be
particularly helpful for the book I am working on.
- 5/2/08
-
Homework for week 13: Complete your implementation and experiments,
and prepare a presentation for the last class on May 7. The
presentation will be 15 minutes each including time for questions. It
should include a concise problem description and concentrate on
design, implementation, and tests/demo. Everyone will evaluate each
other's work and presentation.
- 4/24/08
-
Homework for week 12: (1) Work on full implementation and experiments
for your course project, refine your design as necessary, and email me
a brief status report---a few sentences suffice. (2) Carefully read
my "lecture notes" for weeks 8 and 9, on generating efficient
implementations from Datalog rules, and mark any big things and little
things that you think should be improved. Please write clearly so it
is readable.
- 4/16/08
-
Homework for week 11: Complete a detailed design and start an initial
implementation and preliminary experiments for your course project.
Write your detailed design, and summarize the status of your
implementation and experiments.
- 4/9/08
-
Homework for week 10: (1) Carefully read my "lecture notes" for weeks
7 and partly 8, on optimizing recursive functions, and mark any big
things and little things that you think should be improved. Please
write clearly so it is readable. (2) Address comments I had sent to
everyone individually, as well comments from everyone at the project
discussions today, in your project description, to finish the previous
homeworks.
- 4/2/08
-
Homework for week 9: Prepare a presentation about the problem or
problems you are working on for your course project, based on your
description for homework 7, and summarize the status. The
presentations will be in class next week. Each presentation should be
about 10 minutes problem description plus 5 minutes discussion.
-
Lifted project discussion in Lectures Schedule from week 12 to week
10, which will be next week.
- 3/27/08
-
Homework for week 8: Carefully read my "lecture notes" for weeks 5 and
6, on efficient implementation of set expressions, and mark any big
things and little things that you think should be improved. Please
write clearly so it is readable.
- 3/14/08
-
Homework for week 7: Write a complete problem description and a
preliminary solution design. A complete problem description should
include (1) an exact statement of the problem (what is given as input
and what is asked as output), (2) a minimum of one concrete and
detailed example (showing precisely what is given and what is asked),
(3) a survey of the state of the art on solutions to the problem (with
precise references), and (4) a plan of applications (either specific
hard examples, or general kinds or classes of examples). A
preliminary solution design should include not only ideas for solving
the problem, but also an explanation of the ideas using the example in
(2) and a plan of attack for the applications in (4).
- 3/5/08
-
Homework for week 6: Talk to me within the next week about your course
project. You can stop by any time I am around or make an appointment
by email. I can meet Thu before 1pm, Fri before 12:30pm, Mon 3-4:30;
other times are possible too but with very short durations, as they
are between other meetings or classes.
-
Added link to paper on efficient implementations by transformations
for core RBAC.
- 2/27/08
-
Homework for week 5: Carefully read my "lecture notes" for last week,
on incrementalizing expensive arithmetic and array computations in
loops, and mark any big things and little things that you think should
be improved. Please write clearly so it is readable.
- 2/20/08
-
Homework for week 4: (1) Describe ideas for what you would like to do
for the course project. The ideas should include why, what, and how,
in as much detail as you can write in, say, half a day. If you are
not completely sure about what project you want to do yet, you can
describe ideas for multiple possibilities. Feel free to discuss with
me any time. (2) Include item (1) from week 1, unless you sent me or
showed me otherwise already.
- 2/13/08
-
Homework for week 3: (1) Carefully read my "lecture notes" for the
first week, and mark any big things and little things that you think
should be improved. (2) In the core RBAC executable specification in
Python, identify where each of the constraints of the form AB subset A
x B and the constraint about active roles being assigned roles are
maintained. Bonus: propose how the constraints in core RBAC could be
better specified, and try to do it in Python and test it if possible.
- 2/6/08
-
Homework for week 2: write a test program for core RBAC in Python; try
to make it general and extensible.
-
Added links to Python Tutorial, Library Reference, and Reference
Manual under Other Pointers.
-
Added links to Python, Python Documentation, and Python 2.5 Quick
Reference also.
-
Added link to core RBAC executable specification in Python.
- 1/30/08
-
Homework for week 1: (1) Write anything interesting you thought about
from today's lecture; it could be a just paragraph, but no more than a
page. (2) Think about a problem, or problems, in any application
domain of your interest, for which you would like to come up with
correct and efficient solutions. You will have a few weeks to work on
this and use it for your course project. Feel free to discuss your
ideas with me any time.
-
Added Handout Q for Questionnaire
- 1/29/08
-
Course page is created with General Information, Lectures Schedule,
and Requirements.
Annie Liu