Lecture overview -- Keyboard shortcut: 'u'  Previous page: Examples of language embedding in HTML -- Keyboard shortcut: 'p'  Next page: Language Mirroring [Section] -- Keyboard shortcut: 'n'  Lecture notes - all slides and notes together  slide -- Keyboard shortcut: 't'  Textbook -- Keyboard shortcut: 'v'  Help page about these notes  Alphabetic index  Course home  Lecture 6 - Page 11 : 22
Functional Programming in Scheme
Linguistic abstraction
Course home page embedding in Scheme

The simple course home page language is an embedded list language in Scheme

(let ((ttl "Programming Paradigms")
      (max 5)
      (current 3)
     )

 `(course-home-page

   (name ,ttl)

   (number-of-lectures ,max)

   ,(cons 
     'lecture-names
     (map downcase-string  
       (list "intr" "scheme" "HIGHER-ORDER-FN" 
       "eval-order" "lisp-languages")))

   (current-lecture ,current)

   (links
     "schemers.org" "http://www.schemers.org/"
     "LAML" "http://www.cs.auc.dk/~normark/laml/"
     "Haskell" "http://haskell.org/"
   )
  )   
)

A sample embedding of a course home document in a Scheme program. We use a quasiquotation to provide for a representation of the course home page as a list structure in the Scheme context.