2.04 blog-sols-handout

2.04 blog-sols-handout - [new-text (begin (printf...

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
-- Pseudocode CGI for the blog exercise function get-entry display posts get-input "title" get-input "text" button ("Preview", preview) function preview print (lookup title) print (lookup text) get-input "accept?" button ("Continue", check-acceptable) function check-acceptable if ((lookup accept?) == "y") store-post (lookup title) (lookup text) get-entry ==================================================== ; blog prototype with text/IO and some helpers for cleanliness (define posts empty) (define (add-post title text) (cons title posts)) (define (get-post-data) (let ([new-title (begin (printf "Enter title: ") (read))]
Background image of page 1
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: [new-text (begin (printf "Enter text: ") (read))]) (list new-title new-text))) (define (confirm-data? new-title new-text) (begin (printf "Title: ~a~n" new-title) (printf "Text: ~a~n" new-text) (printf "accept? (y or n)") (eq? 'y (read)))) (let loop ([text ""] [title ""]) (printf "~a~n" posts) (let* ([title-text-list (get-post-data)] [new-title (first title-text-list)] [new-text (second title-text-list)]) (let ([accept? (confirm-data? new-title new-text)]) (if accept? (begin (set! posts (add-post new-title new-text)) (loop "" "")) (loop new-title new-text)))))...
View Full Document

This note was uploaded on 02/06/2008 for the course CS 4536 taught by Professor Fisler during the Winter '08 term at WPI.

Ask a homework question - tutors are online