Abstract
The World Wide Web (WWW) offers the potential to deliver specialized information to an audience of unprecedented size. Along with this exciting new opportunity comes a challenge for software developers: instead of rewriting our software applications to operate over the WWW, how can we maximize software reuse by retrofitting existing applications? We have developed a Web server tool. written in Common Lisp, that allows existing graphical user interface applications written using the Common Lisp Interface Manager (CLIM) to hook easily into the WWW. This tool — CWEST (CLIM-WEb Server Tool, pronounced “quest”) — was developed to operate with EcoCyc, an electronic encylopedia of the genes and metabolism of the bacterium E. coli. EcoCyc consists of a database of objects relevant to E. coli biochemistry and a user interface, implemented in CLIM, that runs on the X-window system and generates graphical displays appropriate to biological objects. Each query to the EcoCyc WWW server is treated as a command to the EcoCyc program, which dynamically generates an appropriate CLIM drawing. CWEST translates that drawing, which can be a mixture of text and graphics, into the HyperText Markup Language (HTML) and/or the Graphics Interchange Format (GIF), which are returned to the client. Sensitive regions embedded in the CLIM drawing are converted to hyperlinks with Universal Resource Locators (URLs) that generate further EcoCyc queries. This tight coupling of CLIM output with Web output makes CLIM a powerful high-level programming tool for Web applications. The flexibility of Common Lisp and CLIM made implementation of the server tool surprisingly easy, requiring few changes to the existing EcoCyc program. The results can be seen at URL http://www.ai.sri.com/ecocyc/browser.html. We have made CWEST available to the CLIM community at large, with the hope that it will spur other software developers to make their CLIM applications available over the WWW.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.