;;SB: I started this buffer by calling emacs, and then "M-x slime".   
;;SB:  In what follows, the comments starting with ;;SB: were added later,
;;SB:  the rest is unmodified Slime's output. 

;;SB: Slime in my configuration calls SBCL, because my ~/.emacs contains
;;SB:  (setq inferior-lisp-program "/opt/local/bin/sbcl")

; SLIME 2016-02-10
CL-USER> (ql:quickload "cl-html-parse")
To load "cl-html-parse":
  Load 1 ASDF system:
    cl-html-parse
; Loading "cl-html-parse"

("cl-html-parse")

;;SB: Did this to avoid warnings about variable S being underclared when used in SETQ
CL-USER> (defvar s)
S

;;SB: At first, I did this without the PROGN. As a result, I got some 1500 lines of the
;;SB:  return value printed into my buffer. That was unwelcome, and I tried to delete them,
;;SB:  only to find that Slime marked some text in the buffer read-only, and would refuse
;;SB:  any region deletion method I tried, with the message that "Text is read-only". Ouch.
;;SB:
;;SB: In the end, I found http://stackoverflow.com/questions/24565068/emacs-text-is-read-only
;;SB:  executed "M-x eval-expression (setq inhibit-read-only t)" and then was able to delete
;;SB:  the unwanted text from the buffer. Learn from my mistakes :)
;;SB:
;;SB: Hence the PROGN and the NIL at its end.

CL-USER> (progn (setq s (html-parse:parse-html (open "~/cs59/cl-html-parse-master/dev/examples/contacts.html"))) nil)
NIL

;;SB: Same deal with the final NIL as above.

CL-USER> (with-open-file (f "p5-parsed-html-example.sexp" :direction :output :if-exists :overwrite :if-does-not-exist :create)
                      (write s :stream f) nil)
NIL

CL-USER>