Welcome to Randy Appleton's CS322

Mon Aug 24 -- Syllabus stuff and why do we use programming languages? A list of languages. Install Python 3.X. APL and Brain****. Type systems (stron vs weak, compile time vs run time).
Wed Aug 26 -- Python (starting place)
Thr Aug 27 -- Python lists and list of list methods and map, reduce, filter and list comprehensions. Explain the Sieve of Eratosthene.
Fri Aug 28 -- Generators and Seive.
Mon Aug 30 -- An in-class practice for the quiz.
Wed Sep 2 -- QUIZ on lists and generators.
Thr Sep 3 --
list of string methods. Classes. Constructors. Self. Determining the type of an argument. Parsing strings.
Fri Sep 4 -- Iterators. A card iterator.
Wed Sep 9 -- Comparing C++ and Python. Spell Checker assignment. File I/O with just open, close, readline, and print. Sets and Dictiornaries.
Fri Sep 11 -- Comparing the speed of dicts and sets and dictionaries and doing it in tkinter and Tkinter.
Mon Sep 14 -- pack example and the Calculator and the grid layout and the command option on buttons.
Wed Sep 16 -- Drunken-gui. 2D arrays in Python. Comparing with 2D arrays in c++. 2D arrays of objects. Using lambda with parameters for button commands. The Canvas widget.
Fri Sep 18 -- QUIZ on GUI stuff.
Wed Sep 22 -- Spell checker improvements. Regular Expressions.
Thr Sep 24 -- regex tester and sample data and a python regular expression example.
Fri Sep 25 -- Python vs C++.
Mon Sep 28 -- Prolog.
Wed Sep 30 -- TEST on Python. List comprehensions, sets, GUI, generators, iterators, classes.
Thr Oct 1 -- Lab day. You write me prolog for these questions.
Fri Oct 2 -- Write prolog for elements.
Mon Oct 5 -- Prolog lists.
Wed Oct 7 -- Students work on prolog for list excersizes (answers).
Thr Oct 8 -- Prolog assignment append and reverse and member and more examples.
Mon Oct 12 -- QUIZ on prolog.
Wed Oct 14 -- Go over answers. Get programs turned in.
Fri Oct 16 -- Last lab day.
Mon Oct 19 -- Weird expressions 1 and 2. Sizes of data items on Euclid and an Alpha. Structs and easy and hard parameter passing. c++ constructors and multiple inheritence example 1 and 2.
Thr Oct 22 -- The Double-ended-queue assignment. C++ Templates functions and C++ template classes.
Fri Oct 23 -- more detail. Implement sameAs.cc.
Mon Oct 26 -- Specialization of templates. Python's iterators review. A tutorial on STL's vector and list. auto type in the new c++. An STL reference.
Wed Oct 28 -- SGI's STL FAQ.
Java vs C++. D programming language.
Mon Nov 2 -- Lisp/Scheme.
Wed Nov 4 -- Quiz on templates.
Thr Nov 5 -- Quiz to go over. More scheme.
Mon Nov 9 -- Sceme work.
Wed Nov 11 -- ((if (< 2 3) * +) 4 5). Go over Monday's work. More work.
Thr Nov 12 -- No class
Fri Nov 13 -- No class
Mon Nov 16 -- The dual Lisp assignment.
Mon Nov 23 -- Perl intro and Strings and Arrays and subroutines and varargs and objects.
Mon Nov 30 -- Static vs Dynamic typing vs Duck Typing. Failsafe I/O vs the opposite. Language expressiveness. Language popularity. popularity#2. Cobol popularity. Cobol examples. Life. and the applet. Turing Completeness. Non-turing complete languages. Prolog as turing complete. Prolog extensions.
Wed Dec 2 --
Strong typing revisited. Dating, playing with lists, and quizes in Prolog.