===== Marc L. Smith ===== //(he/him)// \\ **Associate Professor and Chair**\\ Computer Science Department\\ Vassar College ~~NOTOC~~ ==== Coordinates ==== | **Office:** SP 104.5 \\ **Voice:** 845 437 7497 [[https://vassar.zoom.us/j/8904060254?pwd=ZGN2OEdPNEpvMUVFTlphT0xSRk5jQT09|Zoom]]\\ **E-mail:** mlsmith@vassar.edu | | Vassar College, Box 399\\ 124 Raymond Avenue\\ Poughkeepsie, NY 12604-0399 | ==== Spring 2024 ==== * CMPU-101: Problem-Solving and Abstraction\\ * Lectures: Mon/Wed 9:00am--10:15am * Labs: Fri 9:00am--11:00am \\ \\ * Office hours: * In person (and [[https://vassar.zoom.us/j/8904060254?pwd=ZGN2OEdPNEpvMUVFTlphT0xSRk5jQT09|Zoom]] by appointment) * Mon/Wed 10:30am--12:00pm in SP 104.5 * //and by appointment// /**** * CMPU-377: Parallel Programming * Lectures: Mon/Wed 12:00--1:15pm (remote) \\ \\ * CMPU-311: Database Systems * Lectures: Mon 3:10--5:10pm \\ \\ * [[https://moodle.vassar.edu/course/view.php?id=25594|BIOL/CMPU-353: Bioinformatics]] * Lectures: Tue/Thu 1:00--3:00pm \\ \\ ****/ ==== Research Interests ==== * Bioinformatics (phylogenetic analysis, evolutionary robotics) * Models of Parallel and Distributed Computation * Unifying Theories of Programming \\ \\ ==== Quotes ==== //Computer Science is the art of turning constants into variables.// --Donald Knuth //The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds castles in the air, from air, creating by exertion of the imagination.// --Fred Brooks (The Mythical Man Month) //Computer science inverts the normal. In normal science, you're given a world, and your job is to find out the rules. In computer science, you give the computer the rules, and it creates the world.// --Alan Kay //I did make up this term [object oriented] and it was a bad choice because it **under-emphasized the more important idea of message sending**.// -- Alan Kay (A to Z of programming languages: Smalltalk-80 - 2010) //Though OOP came from many motivations...the small scale [motivation] was to find a more flexible version of assignment, and then to try to eliminate it altogether.// --Alan Kay, [[http://worrydream.com/EarlyHistoryOfSmalltalk/|The Early History of SmallTalk]] //Controlling complexity is the essence of computer programming.// --Brian Kernighan //There are two ways of constructing a software design: one way is to make it so simple that there are __obviously__ no deficiences and the other way is to make it so complicated that there are no __obvious__ deficiencies. The first method is far more difficult.// --C.A.R. Hoare (The emperor's old clothes - 1981) //Simplicity is a great virtue but it requires hard work to achieve it and education to appreciate it. And to make matters worse: complexity sells better.// --Edsger Dijkstra //SQL, Lisp, and Haskell are the only programming languages that I've seen where one spends more time thinking than typing.// --Philip Greenspun //If you give someone Fortran, he has Fortran. If you give someone Lisp, he has any language he pleases.// --Guy L. Steele, Jr. //Do the best you can until you know better. Then when you know better, do better.// --Maya Angelou /* (( λ (x) (x x)) ( λ (x) (x x))) \\ */ $((\lambda(x)\ (x\ x))\ (\lambda(x)\ (x\ x)))$