[plt-scheme] Building a proxy in plt-scheme
From: Thomas-Xavier MARTIN (txm at m4x.org)
Date: Tue Oct 19 04:05:49 EDT 2004 |
|
A client has recently asked me to develop a local equivalent to Furl
(furl.net), that is, a way to mark, annotate and keep a local copy of all or
some of the (HTML) pages seen by a user, irrelevant of the browser used. It
should also be possible to search the local copies, but that feature can
easily be implemented separately from the rest.
It seems to me that the best way to architecture such a tool is as a
transparent proxy that can be placed at one specific point in the proxy chain
used by that client. That proxy chain includes some caching at the network
end and some rewriting-for-security proxy at the user end. The specific place
in the chain where one should introduce the new archiving proxy is also a
separate and interesting problem.
By the way, if you are aware of an existing project that already fit the need,
please do tell me about it. I couldn't find anything related, but searching
the Net is an art and not a science... (The mozilla/Firefox extension slogger
is 99% of what I need, but it is browser specific.)
As this is a small to medium scale, low-priority, no fixed deadline project
that will have little impact on how much I charge this specific client, I am
considering using it as an exploration into (PLT) Scheme.
I have been considering switching from my current language (Tcl) towards a
higher abstraction language for a while, and Scheme seems the logical next
step.
To refresh my 15-year old post-graduate stint with functional languages, I
have recently read SICP and HtDP, and I am now reading HtUS and the web
server manual.
I would be grateful for any advice or suggestions on how to architecture such
a project in PLT-Scheme, which libraries and tools I should look at, etc.
--
Sincerely,
Thomas-Xavier MARTIN
txm at m4x.org