[Lispweb] www.fast-index.com

Dr Nick Levine n.levine at anglia.ac.uk
Fri Jun 8 03:52:39 CDT 2001


Hi.

I'd be interested in people's opinions of this site. 

I originally did the work with a possible commercial demo in mind; the
demo never materialised so I converted the site into something more
"academic", bought a domain, started the server and left it
running. It's been up for a few months but doesn't get much traffic,
so I'd appreciate it if everyone would visit the site simultaneously
and then I can see how it stands up to load. (Ha!)

My intentions in producing this site (other than the commercial
possibilities) were:
i) to explore the limits of web presentation without use of graphics
ii) to write a search engine and discover where the pain lay
iii) to do it all in lisp (of course)

The end results have been fun to play with. The code needs a little
cleaning up, which I hope to do in the next month or so, after which I
will be happy to open-source it. Please let me know if you have any
interest in me doing this, otherwise I'll find something else to do
with my time. For now, apart from the brief extract under "Help", I'll
include the source for one of the pages below. (You'll see that -
wonderful as closures are - I didn't bother to use them to preserve
state.)

Best regards,

- nick


-------------------------8<---------------------

(def-url "$user-id/registration/password.html?username=$username&firstname=$firstname&pass=$rest:passwords"
  (when (and passwords 
             (string= (first passwords) (second passwords)))
    (decache-user-entries user-id)
    (with-user (user-id)
      (setf (user-name user)           username
            (user-first-name user)     (if (plusp (length firstname))
                                           firstname
                                         (string-capitalize username))
            (user-password user)       (first passwords)
            (user-last-login user)     (get-universal-time)
            (lookup-username username) user))
    (redirect-service 
     (merge-relative (url-from-value "$user-id/registration/complete.html"
                                     user-id)
                     url)))
  (let ((title $"$ Registration - Step Three"))
    (with-html (title :mono)
      (with-body
        (with-heading
         (title)
         (with-top-form (:get (merge-relative (url-from-value "$user-id/registration/password.html?pass="
                                                              user-id)
                                              url))
           (with-indents
            (with-paragraphs
             (if passwords
                 (with-strong (with-message passwords-identical))
               (with-message bald-thanks))
             (with-several
              (hidden "username" username)
              (hidden "firstname" firstname)
              (with-table (:width 60)
                (with-row ()
                  (with-cell (:align :right) (with-message choose-password))
                  (with-cell () (input :password :name "pass" :size 10)))
                (with-row ()
                  (with-cell (:align :right) (with-message choose-password-again))
                  (with-cell () (with-several (input :password :name "pass" :size 10)
                                              (input :submit :value "Go!"))))))
             (with-cite 
               (with-message low-security-passwords))))))))))




More information about the lispweb mailing list