X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=index.mdwn;h=26ae09cf756fad2bd4b8a16e843f82eb315ca0b3;hp=4f115e854c3660231567c96025c632e9c508b70d;hb=dc9298c6718ec9bc63550ec6bc6b5a187f235e50;hpb=5f08c6ac521e9a38fb2694567ec41adb6d94fb05 diff --git a/index.mdwn b/index.mdwn index 4f115e85..26ae09cf 100644 --- a/index.mdwn +++ b/index.mdwn @@ -7,51 +7,91 @@ This course will be co-taught by [Chris Barker](http://homepages.nyu.edu/~cb125/ ## Announcements ## -The seminar meets on Mondays from 4-6, in +* The seminar meets on Mondays from 4-6, in the Linguistics building at 10 Washington Place, in room 104 (back of the first floor). -One student session will be held every Wednesday from 3-4. The other will be arranged to fit the schedule of those who'd like to attend but can't make the Wednesday time. (We first proposed Tuesdays from 11-12, but this time turns out not to be so helpful.) If you're one of the students who wants to meet for Q&A at some other time in the week, let us know. - -You should see the student sessions as opportunities to clear up lingering issues from material we've discussed, and help get a better footing for what we'll be doing the next week. It would be smart to make a serious start on that week's homework, for instance, before the session. - -There is now a [[lambda evaluator]] you can use in your browser (no need to install any software). -It can help you check whether your answer to some of the homework questions works correctly. - -There is now a [library](/lambda_library) of lambda-calculus arithmetical and list operations, some relatively advanced. - -There's also a page of [advanced challenges and techniques](/advanced) for the untyped lambda-calculus. - - - +* One student session will be held every Wednesday from 3-4. The other will +be arranged to fit the schedule of those who'd like to attend but can't +make the Wednesday time. (We first proposed Tuesdays from 11-12, but this +time turns out not to be so helpful.) If you're one of the students who +wants to meet for Q&A at some other time in the week, let us know. + + You should see the student sessions as opportunities to clear up lingering +issues from material we've discussed, and help get a better footing for what +we'll be doing the next week. It would be smart to make a serious start on that +week's homework, for instance, before the session. + +* There is now a [[lambda evaluator]] you can use in your browser (no need to +install any software). It can help you check whether your answer to some of the +homework questions works correctly. + + There is also now a [library](/lambda_library) of lambda-calculus +arithmetical and list operations, some relatively advanced. + + An evaluator with the definitions used for homework 3 +preloaded is available at [[assignment 3 evaluator]]. + +* Henceforth, unless we say otherwise, every homework will be "due" by +Sunday morning after the Monday seminar in which we refer to it. +(Usually we'll post the assignment shortly before the seminar, but don't +rely on this.) However, for every assignment there will be a "grace +period" of one further week for you to continue working on it if you +have trouble and aren't able to complete the assignment to your +satisfaction by the due date. You shouldn't hesitate to talk to us---or +each other!---about the assignments when you do have trouble. We don't +mind so much if you come across answers to the assignment when browsing +the web, or the Little Schemer book, or anywhere. So long as you can +reason yourself through the solutions and experience for yourself the +insights they embody. + + We reserve the privilege to ruthlessly require you to +explain your solutions in conversations at any point, in section or in +class. + + You should always *aim* to complete the assignments by the "due" date, +as this will fit best with the progress of the seminar. + + The assignments will tend to be quite challenging. Again, you should by +all means talk amongst yourselves, and to us, about strategies and +questions that come up when working through them. + + We will not always be able to predict accurately which problems are +easy and which are hard. If we misjudge, and choose a problem that is +too hard for you to complete to your own satisfaction, it is still +very much worthwhile (and very much appreciated) if you would explain +what is difficult, what you tried, why what you tried didn't work, and +what you think you need in order to solve the problem. ## Lecture Notes and Assignments ## (13 Sept) Lecture notes for [[Week1]]; [[Assignment1]]. -Topics: Applications; Basics of Lambda Calculus; Comparing Different Languages +> Topics: [[Applications]], including [[Damn]]; Basics of Lambda Calculus; Comparing Different Languages (20 Sept) Lecture notes for [[Week2]]; [[Assignment2]]. -Topics: Reduction and Convertibility; Combinators; Evaluation Strategies and Normalization; Decidability; Lists and Numbers +> Topics: Reduction and Convertibility; Combinators; Evaluation Strategies and Normalization; Decidability; [[Lists and Numbers]] -(27 Sept) Lecture notes for [[Week3]]; [[Assignment3]]. +(27 Sept) Lecture notes for [[Week3]]; [[Assignment3]]; +an evaluator with the definitions used for homework 3 +preloaded is available at [[assignment 3 evaluator]]. -Topics: Recursion with Fixed Point Combinators +> Topics: [[Evaluation Order]]; Recursion with Fixed Point Combinators -(4 Oct) Lecture notes for Week 4 +(4 Oct) Lecture notes for [[Week4]]; [[Assignment4]]. + +> Topics: More on Fixed Points; Sets; Aborting List Traversals; [[Implementing Trees]] - + +(18 Oct) Lecture notes for [[Week5]] (in progress). + +> Topics: Types, Polymorphism [[Upcoming topics]] +[Advanced Lambda Calculus Topics](/advanced_lambda) + ##[[Offsite Reading]]## @@ -234,5 +274,4 @@ All wikis are supposed to have a [[SandBox]], so this one does too. This wiki is powered by [[ikiwiki]]. -[[Test]]