tkWWW is an early, now discontinued
web browser
A web browser is application software for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's screen. Browsers are used on ...
and
WYSIWYG
In computing, WYSIWYG ( ), an acronym for What You See Is What You Get, is a system in which editing software allows content to be edited in a form that resembles its appearance when printed or displayed as a finished product, such as a printed d ...
HTML editor
written by Joseph Wang at
MIT
The Massachusetts Institute of Technology (MIT) is a private land-grant research university in Cambridge, Massachusetts. Established in 1861, MIT has played a key role in the development of modern technology and science, and is one of the m ...
as part of
Project Athena
Project Athena was a joint project of MIT, Digital Equipment Corporation, and IBM to produce a campus-wide distributed computing environment for educational use. It was launched in 1983, and research and development ran until June 30, 1991. , At ...
and the
Globewide Network Academy project.
The browser was based on the
Tcl
TCL or Tcl or TCLs may refer to:
Business
* TCL Technology, a Chinese consumer electronics and appliance company
**TCL Electronics, a subsidiary of TCL Technology
* Texas Collegiate League, a collegiate baseball league
* Trade Centre Limited ...
language and the
Tk (toolkit) extension
but did not achieve broad user-acceptance or market share, although it was included in many
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which ...
distributions by default.
Joseph Wang wanted tkWWW to become a replacement for r r n and to become a "
swiss army knife" of networked computing.
History
Joseph Wang announced in July 1992 that he was developing a web browser based on Tk, and made the
alpha
Alpha (uppercase , lowercase ; grc, ἄλφα, ''álpha'', or ell, άλφα, álfa) is the first letter of the Greek alphabet. In the system of Greek numerals, it has a value of one. Alpha is derived from the Phoenician letter aleph , whic ...
version 0.1 publicly available.
Version 0.4 integrated a much easier installation procedure, a better default color scheme, keyboard traversals and a history mechanism.
Version 0.5, released 8 February 1993, introduced support for multiple fonts.
Version 0.6 made personal annotations compatible with
xmosaic and improved the GUI.
With the release of version 0.7 on 1 May 1993, tkWWW became the first WYSIWYG HTML editor for
X11
The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems.
X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting wi ...
which was originally written by Nathan Torkington. Another improvement was the ability to start in ''iconic mode''.
Version 0.8 improved the
graphical user interface
The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
(GUI) and added a "reload" option.
In version 0.9, the browser achieved
beta
Beta (, ; uppercase , lowercase , or cursive ; grc, βῆτα, bē̂ta or ell, βήτα, víta) is the second letter of the Greek alphabet. In the system of Greek numerals, it has a value of 2. In Modern Greek, it represents the voiced labiod ...
status and added support for character-styling
tags and for version 7.0 of Tcl, as well as partial support for image tags.
Version 0.11 worked successfully with
RCS
RCS may refer to:
Organisations
*Racing Club de Strasbourg Alsace
* Radio Corporation of Singapore
*Radcliffe Choral Society
* Rawmarsh Community School
*Red Crescent Society
*Red Cross Society
* Representation of Czechs and Slovaks, a football t ...
.
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.
Support for
HTML+
The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScri ...
, a proposed successor to
HTML 2
The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScript ...
, was implemented while the specification was being developed.
tkWWW was extended by the
GNU Guile
GNU Ubiquitous Intelligent Language for Extensions (GNU Guile) is the preferred extension language system for the GNU Project and features an implementation of the programming language Scheme. Its first version was released in 1993. In addition ...
project, to support
Scheme A scheme is a systematic plan for the implementation of a certain idea.
Scheme or schemer may refer to:
Arts and entertainment
* ''The Scheme'' (TV series), a BBC Scotland documentary series
* The Scheme (band), an English pop band
* ''The Schem ...
extensions.
Further development
The short-term agenda for tkWWW included an
SGML
The Standard Generalized Markup Language (SGML; ISO 8879:1986) is a standard for defining generalized markup languages for documents. ISO 8879 Annex A.1 states that generalized markup is "based on two postulates":
* Declarative: Markup should des ...
parser
Parsing, syntax analysis, or syntactic analysis is the process of analyzing a string of symbols, either in natural language, computer languages or data structures, conforming to the rules of a formal grammar. The term ''parsing'' comes from Lati ...
and the separation of the browser from the editor,
in order to simplify user experience.
The long-term plan included new functions like
word processing
A word is a basic element of language that carries an objective or practical meaning, can be used on its own, and is uninterruptible. Despite the fact that language speakers often have an intuitive grasp of what a word is, there is no consen ...
,
directory navigation,
file transfer File transfer is the transmission of a computer file through a communication channel from one computer system to another. Typically, file transfer is mediated by a communications protocol. In the history of computing, numerous file transfer protocol ...
, and
news
News is information about current events. This may be provided through many different Media (communication), media: word of mouth, printing, Mail, postal systems, broadcasting, Telecommunications, electronic communication, or through the tes ...
and
email
Electronic mail (email or e-mail) is a method of exchanging messages ("mail") between people using electronic devices. Email was thus conceived as the electronic ( digital) version of, or counterpart to, mail, at a time when "mail" meant ...
reading.
Features
* With the ''htext''-
widget, Tk code could be embedded into web pages.
* Because the interface was written in Tk, it was easy to modify and extend the system.
* A WYSIWYG editor for HTML web pages, with all major HTML functions (character emphasis, headings, paragraph breaks, lists, anchors)
* Support for many
protocols
Protocol may refer to:
Sociology and politics
* Protocol (politics), a formal agreement between nation states
* Protocol (diplomacy), the etiquette of diplomacy and affairs of state
* Etiquette, a code of personal behavior
Science and technology
...
:
FTP
The File Transfer Protocol (FTP) is a standard communication protocol used for the transfer of computer files from a server to a client on a computer network. FTP is built on a client–server model architecture using separate control and data ...
,
gopher
Pocket gophers, commonly referred to simply as gophers, are burrowing rodents of the family Geomyidae. The roughly 41 speciesSearch results for "Geomyidae" on thASM Mammal Diversity Database are all endemic to North and Central America. They are ...
,
HTTP
The Hypertext Transfer Protocol (HTTP) is an application layer protocol in the Internet protocol suite model for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide Web, ...
,
telnet
Telnet is an application protocol used on the Internet or local area network to provide a bidirectional interactive text-oriented communication facility using a virtual terminal connection. User data is interspersed in-band with Telnet control i ...
* Multiple
font
In metal typesetting, a font is a particular size, weight and style of a typeface. Each font is a matched set of type, with a piece (a "sort") for each glyph. A typeface consists of a range of such fonts that shared an overall design.
In mod ...
s,
including support for Asian fonts
* Multimedia formats supported:
bitmap
In computing, a bitmap is a mapping from some domain (for example, a range of integers) to bits. It is also called a bit array
A bit array (also known as bitmask, bit map, bit set, bit string, or bit vector) is an array data structure that c ...
,
DVI
Digital Visual Interface (DVI) is a video display interface developed by the Digital Display Working Group (DDWG). The digital interface is used to connect a video source, such as a video display controller, to a display device, such as a comp ...
,
GIF
The Graphics Interchange Format (GIF; or , see pronunciation) is a bitmap image format that was developed by a team at the online services provider CompuServe led by American computer scientist Steve Wilhite and released on 15 June 1987. ...
MPEG
The Moving Picture Experts Group (MPEG) is an alliance of working groups established jointly by International Organization for Standardization, ISO and International Electrotechnical Commission, IEC that sets standards for media coding, includ ...
,
PostScript
PostScript (PS) is a page description language in the electronic publishing and desktop publishing realm. It is a dynamically typed, concatenative programming language. It was created at Adobe Systems by John Warnock, Charles Geschke, Doug Br ...
,
and
X Window dump files
* Automatic
file unpacking
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.
tkWWW was criticized for not supporting the
mailto URI scheme,
rlogin
The Berkeley r-commands are a suite of computer programs designed to enable users of one Unix system to log in or issue commands to another Unix computer via TCP/IP computer network. The r-commands were developed in 1982 by the Computer Systems ...
,
WAIS, and
HTML forms
A webform, web form or HTML form on a web page allows a user to enter data that is sent to a Server (computing), server for processing. Forms can resemble form (document), paper or database forms because web users fill out the forms using checkboxe ...
. A ''stop''-button to interrupt the transfer of web pages was also not integrated.
Extensions
![tkWWWrobot](https://upload.wikimedia.org/wikipedia/commons/5/57/TkWWWrobot.svg)
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.
Phoenix
''Phoenix'' was a well-known web browser and editor, created at the
University of Chicago
The University of Chicago (UChicago, Chicago, U of C, or UChi) is a private research university in Chicago, Illinois. Its main campus is located in Chicago's Hyde Park neighborhood. The University of Chicago is consistently ranked among the b ...
in the
Biological Sciences Division, that was built on tkWWW version 0.9.
Development began in the summer of 1993, when there weren't any easy-to-use web-page editors available.
[README of Phoenix-0.1.8 Alpha release (released 15 May 1995); available her]
/ref> Development ceased in May 1995, there being a variety of similar tools available.
The main new features were: improved HTML+ support, deeper integration of features such as Cut, copy, and paste, copy and paste and native look-and-feel, and support for the Kerberos protocol
Kerberos () is a computer-network authentication protocol that works on the basis of ''tickets'' to allow nodes communicating over a non-secure network to prove their identity to one another in a secure manner. Its designers aimed it primarily ...
by modified servers. The browser was supported on MS-DOS
MS-DOS ( ; acronym for Microsoft Disk Operating System, also known as Microsoft DOS) is an operating system for x86-based personal computers mostly developed by Microsoft. Collectively, MS-DOS, its rebranding as IBM PC DOS, and a few ope ...
, Microsoft Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
, Mac OS
Two major famlies of Mac operating systems were developed by Apple Inc.
In 1984, Apple debuted the operating system that is now known as the "Classic" Mac OS with its release of the original Macintosh System Software. The system, rebranded "M ...
, and on Linux and other Unix
Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and ot ...
systems. Further development would have added support for BSD
The Berkeley Software Distribution or Berkeley Standard Distribution (BSD) is a discontinued operating system based on Research Unix, developed and distributed by the Computer Systems Research Group (CSRG) at the University of California, Berk ...
platforms.
The short-term plan for tkWWW was to separate the editing and browsing functions, as had already been accomplished for Phoenix. Inline-image support for GIFs and ISMAPs were also already integrated in the first version of Phoenix.
The ability to access Multi-user Object-Oriented (MOO
A MOO ("MUD, object-oriented") is a text-based online virtual reality system to which multiple users (players) are connected at the same time.
The term MOO is used in two distinct, but related, senses. One is to refer to those programs descend ...
) or Multi-User Dungeon (MUD
A MUD (; originally multi-user dungeon, with later variants multi-user dimension and multi-user domain) is a Multiplayer video game, multiplayer Time-keeping systems in games#Real-time, real-time virtual world, usually Text-based game, text-bas ...
) servers was requested as a new package for tkWWW, and this was delivered by the Phoenix team.
The TkWWW Robot
Scott Spetka presented a paper at the ''Mosaic and the Web
A mosaic is a pattern or image made of small regular or irregular pieces of colored stone, glass or ceramic, held in place by plaster/mortar, and covering a surface. Mosaics are often used as floor and wall decoration, and were particularly pop ...
'' Conference in Chicago
(''City in a Garden''); I Will
, image_map =
, map_caption = Interactive Map of Chicago
, coordinates =
, coordinates_footnotes =
, subdivision_type = Country
, subdivision_name ...
entitled "The TkWWW Robot" in October 1994.
TkWWW robot was one of the first web crawler
A Web crawler, sometimes called a spider or spiderbot and often shortened to crawler, is an Internet bot that systematically browses the World Wide Web and that is typically operated by search engines for the purpose of Web indexing (''web spid ...
s and internet bot
An Internet bot, web robot, robot or simply bot, is a software application that runs automated tasks (scripts) over the Internet, usually with the intent to imitate human activity on the Internet, such as messaging, on a large scale. An Internet ...
s 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
The Air Force Research Laboratory (AFRL) is a scientific research organization operated by the United States Air Force Materiel Command dedicated to leading the discovery, development, and integration of aerospace warfighting technologies, pl ...
, to build HTML indexes, compile WWW statistics, collect image portfolios, etc. 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.
The search algorithm
In computer science, a search algorithm is an algorithm designed to solve a search problem. Search algorithms work to retrieve information stored within particular data structure, or calculated in the search space of a problem domain, with eith ...
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.
System requirements and technical
tkWWW was originally developed for Unix
Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and ot ...
but would run on any modern operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs.
Time-sharing operating systems schedule tasks for efficient use of the system and may also in ...
where Tcl
TCL or Tcl or TCLs may refer to:
Business
* TCL Technology, a Chinese consumer electronics and appliance company
**TCL Electronics, a subsidiary of TCL Technology
* Texas Collegiate League, a collegiate baseball league
* Trade Centre Limited ...
/ Tk is properly installed.README
In software development, a README file contains information about the other files in a directory or archive of computer software. A form of documentation, it is usually a simple plain text file called README, Read Me, READ.ME, README.TXT, R ...
-file of the tkWWW-0.13pre2 package. To display images, tkWWW requires the xli package.
tkWWW has two strictly separated processes: one for the GUI, and another for network interaction and for parsing HTML. The latter is compiled
In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs that ...
C code based on the CERN libwww
Libwww was an early World Wide Web software library providing core functions for browsers, implementing HTML, HTTP, and other technologies. Tim Berners-Lee, at CERN, released libwww (then also called the "Common Library") in late 1992, comprising ...
library
A library is a collection of materials, books or media that are accessible for use and not just for display purposes. A library provides physical (hard copies) or digital access (soft copies) materials, and may be a physical location or a vir ...
. The front-end GUI is written in Tcl/Tk, which is interpreted at run time.
See also
*History of the World Wide Web
The World Wide Web ("WWW", "W3" or, simply, "the Web") is a global information medium which users can access via computers connected to the Internet. The term is often mistakenly used as a synonym for the Internet, but the Web is a service tha ...
* Tkhtml
References
External links
Filewatcher.com tkWWW packages on the different ftp servers
tkWWW help
{{DEFAULTSORT:Tkwww
1992 software
Discontinued web browsers
Free HTML editors
Gopher clients
Free software programmed in Tcl
Free web browsers
Massachusetts Institute of Technology software
Software that uses Tk (software)