3cr. P: A597, A201, A504, or A304. Advanced programming techniques: user- defined functions and types, recursion vs. iteration, parameter- passing mechanisms. Classic abstract data types and algorithms. Programming style. Object-oriented programming. Credit not given for both A598 and A202. Not intended for computer science majors. A598 corresponds to old A502.