Please Reload Every Time You Read This Page!

CSC123/252: Programming Languages, Fall 2008

Dr. Chuck C. Liang
Associate Professor of Computer Science, Hofstra University .

Office Address:
201A Adams Hall
Hofstra University
Hempstead, NY 11550
Office Phone: (516 463) 5559

Email: cscccl@hofstra.edu (<- click to send me mail)

Official Office Hours: Monday through Thursday 3-4pm


Course Syllabus and Goals

Online Resources:

Some lambda calculus in Python
Some lambda calculus in Scheme

Scheme Programs (files in bold are required reading)

Perl Programs (supplements the Perl tutorial. Files in bold are required reading) C# Programs ( Files in bold are required reading) AspectJ Programs (All required reading)


Homework 1. due 9/15. SAMPLE SOLUTIONS now available
Scheme Lab and assignment. Due 9/29
Some code and notes from 9/17 class
C code similar to those used in class on 9/25
Some miscellaneous perl code
More examples of objects: Rational numbers in Scheme, Perl, C++, Java, and C#, and for something really special: rationals in Eiffel : rational.e, rats.e.
Inheritance example (sports teams) in Scheme, Perl, and C#
Perl-Scheme lab and assignment
Comparing inheritance between pure C, and C# (based on 10/20 lecture)
My artistic side: a poem in C++
Use of pointers and casting in C compared to C++
Templates in C++
C# Warmup Assignment due Monday 10/27 (firm deadline). This is an INDIVIDUAL assignment.
THE HALLOWEEN ASSIGNMENT
The Food Assignment. Your xmlwriter visitor should write files consistent with this example.
Food files: foods.cs, foodvisitors.cs aboutfood.cs.
ML-F# .Net integration lab. Support files: fractions.cs, numlist.fs

AspectJ Assignment Part A. Due Wednesday 12/10.
problem B3 of the AOP assignment, with support files figure.java and figs.java. (main is in figs.java).


Announcements:

Final exam Monday 12/15, 4-6pm in adams 208. Professor Xiang Fu will proctor the exam together with another class. Use the exam study guide, with sample solutions to the practice problems. Good luck.

WATCH: Perl Video Lecture (basics; mergesort)
MUST ABSOLUTELY WATCH: Perl closures and objects lecture: Part 1 and Part 2.
NOTE: please don't write "if ($request = "inquiry")..." Use "if ($request eq "inquiry")..." instead.

Extra Extra: really cool instructional video on how to install cygwin on windows. View in full screen mode with screen resolution set to at least 1024x768. Play with Windows media player.