Instructors CS 15-212 � Iliano Cervesato Principles of Programming � Email: iliano+212@qatar.cmu.edu � Phone: 492-8955 � Office: C148 Fall 2006 � Paul Zagieboylo � Email: pzagiebo+212@qatar.cmu.edu � Phone: C144 � Office: 492-8459 � No TA’s What this course is all about Skills � Provide you with advanced Logical attitude toward problem solving � skills � Decompose a problem � concepts into parts � techniques � Compose their solutions in Computer Science and into a complete program programming ? � Reason about programs � Make you better problem solvers to ensure correctness Concepts Techniques � Induction and recursion � Recursive functions � Higher-order functions � Program correctness � Data abstraction � Symbolic computation � Polymorphisms � Structuring large programs � Exceptions � Parsing and grammars � Modularity, … � Computability, … All high-level programming techniques that will allow you to think differently about You will encounter them over and over programming problems 1
The language ML Course Web Page http:/qatar.cmu.edu/course/15-212 � Not a commercial programming language � Few jobs as ML programmers � Logistics � A laboratory for programming languages � News � Forefront of research in new programming languages � Course description � Some aspects made it into Java � Prerequisites � Software � More will appear in future languages � Readings � Grading � Standard ML of New Jersey (SML/NJ) � Schedule of classes This is your syllabus! Readings Further References � No books! � By Prof. Robert Harper � Handouts for a few � one of SML’s creators � inventor of CS 15-212 lectures � On-line notes � Read them before � Draft of forthcoming book coming to class � SML Basis Manual Pages � Code presented in class � Tutorial on using the SML/NJ system That’s it! � Skipping class is not a good idea Software Getting help with ML Standard ML of New Jersey, v. 110.59 1. Read the tutorial on using the � Installed on SML/NJ system unix.qatar.cmu.edu � Linux environment 2. Consult the SML Basis Manual Pages � … you will learn … � All assignments will be tested there � Field trip to the lab this Thursday! 3. Come see us � You can install it on your laptops � Runs also under Windows � But, test your solutions on unix.qatar.cmu.edu before submitting 2
Grades Homework assignments � 6 homework assignments (50%) � Written and programming parts � Handed out on alternate Wednesdays � 50 + 5 x 100 points � Due on Tuesday 13 days later at 2:12am Doha time � Midterm in class (20%) � overnight Monday/Tuesday - don't get confused! � Final in class (30%) � Late homeworks accepted until the beginning of next class, but with a 25% penalty � Bonus points (up to 10%) � Graded by following Monday � for particularly elegant solutions � Evaluated on the basis of � Correctness � Read the notes on style … before each assignment � Negative points (up to 100%) � Specification � Elegance � if caught cheating � No joint assignments The 2-week Cycle No cheating! Students will discuss solutions of Sun Mon Tue Wed Thu F S homework one-on-one with instructors HW n-1 HW n � If you can’t explain what you due out submitted, you get zero points HW n-1 � So … graded � copying from classmate HW n HW n+1 due out � googling solution (?) � paying somebody to do homework � Don’t wait till the last day!!! won’t help Class behavior x How to succeed in this course � Class starts at 10:30, Q-Tel time � Approach this course with an open mind � Late students stay out � Turn cell phones off � Do not think in terms of C or Java � Turn laptops off � No drinking or eating � Appreciate the mathematical � No going in and out structure of programming problems � Raise your hand if you have a question 3
Let the magic begin … 4
Recommend
More recommend