; COURSE DESCRIPTION FILE ; The file must be loaded just after the style course-plan. ; Adjust as lecture pages get ready (define last-lecture-number 3) ; The language of fixed texts (define language-preference 'english) ; Which color scheme to use (apply-course-plan-color-scheme course-plan-color-scheme-4) ; The full title of the course (define course-title "Functional Programming in Scheme") ; The name of the teacher (define teacher-name "Kurt Nørmark") ; The directory in which the course plan resides (define course-dir (string-append laml-dir "slides/iticse/examples/course-plan/")) ; The directory in which the indiviaul lecture descriptions are located (define course-plan-source-directory (string-append course-dir "lectures/")) ; The absolute URL prefix of the course (define course-url-prefix "http://www.cs.auc.dk/~normark/") ; Bottom page standard links (define (standard-links) (letrec ((between-links (lambda () (con (space 5) "|" (space 5))))) (font-size 2 (center (con (a-tag "http://www.cs.auc.dk/~normark/laml/" "The LAML home page") (br) (a-tag "http://www.cs.indiana.edu/scheme-repository/home.html" "The Scheme Repository") (br) (a-tag "http://www.cs.auc.dk/~normark/" "Kurt Nørmark")))))) ; Left frame page standard links (define (general-overview-links) '()) ; The brief title of the course (define brief-course-title "SFP") ; The semester of the course (define course-semester "Spring 2000") ; The brief semester of the course (define brief-course-semester "Spring 00") ; The default room (define normal-course-room "R123") ; -------------------------------------------------------- ; TIMING ISSUES: (define course-start (time-encode 2000 5 30 8 15 0)) ; A list of lecture starting times. (define time-list (list course-start (time-encode 2000 6 6 8 15 0) (time-encode 2000 6 13 8 15 0) (time-encode 2000 6 20 8 15 0) (time-encode 2000 6 27 8 15 0))) ; -------------------------------------------------------- ; CENTRAL COURSE DESCRIPTION: (define lecture-description-list (let* ( (ex-lgt (* 60 105)) ; exercise lengh (pause-lgt (* 60 15)) ; pause between exercises and plenum (for-lgt (* 60 105)) ; plenum length (talk). (ex-inf (list 0 ex-lgt)) (pl-inf (list (+ ex-lgt pause-lgt) for-lgt))) (list ; LECTURE-ID SUBJECT-ID EXERCISE-INFO PLENUM-INFO ROOM (list 'fp-intr 'fp-intr ex-inf pl-inf normal-course-room) (list 'functions 'functions ex-inf pl-inf "S234") (list 'lists 'lists ex-inf pl-inf normal-course-room) (list 'higher-order 'higher-order ex-inf pl-inf normal-course-room) (list 'eval 'eval ex-inf pl-inf normal-course-room) ))) ; ----------------------------------------------------------------------------------------- ; Actual exercises take place in this lecture's lecture-slot (define (actual-exercise-interval this-lecture-rec next-lecture-rec) (lecture-exercise-interval this-lecture-rec)) ; ----------------------------------------------------------------------------------------- ; SUBJECT ISSUES: (define subject-list (list (list 'fp-intr "Introduction to functional programming" "In this lecture we introduce functional programming, especially as a contrast to plain imperative programming") (list 'functions "The function concept" "The concept of functions is central. Here we take a close look at this") (list 'lists "The list concept" "Lists are classical data structures in functional programming. Here we introduce the original Lisp list concept ") (list 'higher-order "Higher order functions" "Higher order functions accept functions are parameters, and they allow us to return a function as the result") (list 'eval "Evaluation order" "Evaluation order is one of the more advanced aspects in this course") )) ; ----------------------------------------------------------------------------------------- (define (leno-lecture lecture-id) (string-append "../../leno/html/" (as-string lecture-id) "." "html"))