tkWWW is an early, now discontinued
web browser and
WYSIWYG HTML editor[6] written by Joseph Wang at
MIT as part of
Project Athena and the
Globewide Network Academy project.[5][7] The browser was based on the
Tcl language and the
Tk (toolkit) extension[6][8][9] but did not achieve broad user-acceptance or market share,[10] although it was included in many
Linux distributions by default.[6] Joseph Wang wanted tkWWW to become a replacement for r r n[11] and to become a "
swiss army knife" of networked computing.[12]
History
Joseph Wang announced in July 1992 that he was developing a web browser based on Tk, and made the
alpha version 0.1 publicly available.[13]
Version 0.4 integrated a much easier installation procedure, a better default color scheme, keyboard traversals and a history mechanism.[14] Version 0.5, released 8 February 1993, introduced support for multiple fonts.[15]
Version 0.6 made personal annotations compatible with
xmosaic and improved the GUI.[16][17]
With the release of version 0.7 on 1 May 1993, tkWWW became the first WYSIWYG HTML editor for
X11[18][19] which was originally written by Nathan Torkington.[20][21] Another improvement was the ability to start in iconic mode.[18][22]
In version 0.9, the browser achieved
beta status and added support for character-styling
tags and for version 7.0 of Tcl, as well as partial support for image tags.[24][25]
Version 0.11 worked successfully with
RCS[dubious –
discuss].[26]
Based on the newly released Tk 4.0, tkWWW 0.13 was an alpha release, in order to allow for wider testing. It also added full support for inline images.[27]
Support for
HTML+, a proposed successor to
HTML 2, was implemented while the specification was being developed.[28]
tkWWW was extended by the
GNU Guile project, to support
Scheme extensions.[29]
tkWWW was developed before the advent of Safe-Tcl, to allow untrusted applications to run from non-privileged accounts. Without such a safeguard, the potential for automatically executing remote scripts was a security issue.[39]
tkWWW was criticized for not supporting the
mailto URI scheme,
rlogin,
WAIS, and
HTML forms. A stop-button to interrupt the transfer of web pages was also not integrated.[40]
Extensions
Because tkWWW was based on the Tk framework, it was very easy to expand its functions and to extend its capabilities. Indeed, there were several extensions and applications based on tkWWW.[33][41]
Phoenix
Phoenix was a well-known web browser and editor, created at the
University of Chicago in the
Biological Sciences Division, that was built on tkWWW version 0.9.[1][42][43] Development began in the summer of 1993, when there weren't any easy-to-use web-page editors available.[44] Development ceased in May 1995, there being a variety of similar tools available.[42][44]
The main new features were: improved HTML+ support,[1][42] deeper integration of features such as
copy and paste and native look-and-feel,[1][42] and support for the
Kerberos protocol by modified servers.[1] The browser was supported on
MS-DOS,
Microsoft Windows,
Mac OS, and on Linux and other
Unix systems.[1][42][45] Further development would have added support for
BSD platforms.[1]
The short-term plan for tkWWW was to separate the editing and browsing functions, as had already been accomplished for Phoenix.[46] Inline-image support for GIFs and ISMAPs were also already integrated in the first version of Phoenix.[42]
The ability to access Multi-user Object-Oriented (
MOO) or Multi-User Dungeon (
MUD) servers was requested as a new package for tkWWW, and this was delivered by the Phoenix team.[47][48][49]
The TkWWW Robot
Scott Spetka presented a paper at the Mosaic and the Web Conference in
Chicago entitled "The TkWWW Robot" in October 1994.[50][51]
TkWWW robot was one of the first
web crawlers and
internet bots based on tkWWW. It was developed over the summer at the
Air Force Rome Laboratory, with funding from the
Air Force Office of Scientific Research,[52] to build HTML indexes, compile WWW statistics, collect image portfolios, etc.[52] TkWWW robot's major advantage was its flexibility in adapting to virtually any criteria to guide its search path and to control its selection of data for retrieval.[50][53]
The
search algorithm worked by identifying "web neighborhoods" — finding logically related homepages. The bot returned a list of links in the form of
bookmarks. It was limited, however, in that it could include only two links from the original homepages.[52]
System requirements and technical
tkWWW was originally developed for
Unix but would run on any modern
operating system where
Tcl/
Tk is properly installed.[6][54][55] To display images, tkWWW requires the
xli package.[54][55]
tkWWW has two strictly separated processes: one for the GUI, and another for network interaction and for parsing HTML.[56] The latter is
compiledC code based on the CERN
libwwwlibrary.[56] The front-end GUI is written in Tcl/Tk, which is interpreted at run time.[56]
^LoVerso, John R.; Mazer, Murray S. (July 1997).
"Caubweb: Detaching the Web with Tcl"(PDF). Fifth Annual Tcl/Tk Workshop. Boston, Massachusetts: USENIX. Retrieved 28 November 2010.