Dr. Chuck C. Liang
Professor of Computer Science,
Hofstra University .
Office Address:
102 Adams Hall
Hofstra University
Hempstead, NY 11550
Office Phone: (516 463) 5559
Email: cscccl@hofstra.edu (<- click to send me mail)
Official Office Hours: TuTh 4-5pm, Wed 3:30-4:30pm
Course Syllabus and Goals
Lambda calculus in Scheme
Lambda calculus in Ruby
Lambda calculus in Perl
Halting Problem in Lambda Calculus/Scheme
AspectJ Assignment
AspectJ Optional Assignment, with associated
Java base files figure.java and figs.java
Submit all programming assignments on blackboard (csc123) (but not the first homework, which is a written assignment).
More 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)
F# programs:
AspectJ Programs
Other Programs:
C code for linked lists similar to those used in class
Closures and C.
Inheritance and dynamic dispatch in pure C, and C#
Multiple Inheritance in C++
A poem in C++
Use of pointers and casting in C compared
to C++
Visitor pattern class exercise with solution
About templates in C++
Simple windows forms program that uses
several C# features.
Contravariance in Java 1.8
Reflection in Java and how it can be stopped.
Final Exam Thursday 12/15, 6:15-8:15pm in Adams 204. Use the study guide with practice problems and sample solutions. Review Session TBA
Must Read F# intro tutorial. Also see video lecture on blackboard. Also watch special video lectures on blackboard
Tutor Information: Kendra Campbell-McCalla is available to tutor this class Tuesdays 3-4pm in Adams 202 and Thursdays 1:50-3:50pm in Adams 204