Tom Kiley
December 10, 2008


My project provides a simple, easy to use web interface to add create a news feed from search terms. The search terms are sent to google individually and then the xml returned from each query is parsed and combined together resorting the items by date.


Concepts Demonstrated

  • Data abstraction is used to provide access to the elements of the RSS feed.
  • Tree data structures are used throughout for storage, with map, filter, and sort operations performed on the lists to transform them.
  • The list of search terms is stored in a procedure object that allows for adding, removing, and retrieving them.
  • Functional Programming with lambda's and maps, sort and filter are used along with passing the output from one procedure to another in succession.

External Technology

The project uses the scheme web server module to serve web pages to the browser. It uses the scheme url libraries to to retrieve the rss feeds from google. Then it uses the sxml and ssax libraries combined with some map and sort functions to combine the feeds into one master feed. The scheme date and time library was also used to parse the dates in the news feeds and sort them.

The scheme code serves as a interface between your browser and the internet news services to provide you with an easier interface to them.


Usually feed readers require you to go and find rss feeds from sites you would want to keep updated on and manually add them. The hot topics in the news change frequently

Technology Used Block Diagram

Create a simple block diagram of your software system that illustrates the major technical components and how they interact; e.g.:

Additional Remarks

For the sake of the demonstration, the feed is just displayed in a iframe below the control screen, but the idea is that you could add http://localhost:8000/getFeeds to your feed reader and the scheme would be just producing an rss feed.