跳转到内容

ViolaWWW

本页使用了标题或全文手工转换
维基百科,自由的百科全书
ViolaWWW
ViolaWWW 3.3
ViolaWWW 3.3
开发者魏培源[1]
首次发布1992年3月9日,​34年前​(1992-03-09
编程语言Viola[1][2]
平台UNIX
类型网页浏览器
网站viola.org

ViolaWWW是第一个支持万维网(WWW)脚本和样式表的浏览器,目前已停止开发。其首次在1991/1992年的UNIX操作系统上发布,并成为受万维网发源地CERN所推荐的浏览器[1],然而,其最受欢迎浏览器的地位最终被Mosaic所取代。

Viola语言

[编辑]

Viola由魏培源在1991年开发,他也是加州伯克利大学的Experimental Computing Facility(XCF)研究小组成员之一[1][3]。Viola是一个基于UNIX平台的编程语言,其名称为可视化交互的面向对象语言及应用(Visually Interactive Object-oriented Language and Application)的首字母缩写[4]

魏培源对于图形化软件的兴趣始于1989年首次接触到的HyperCard。魏培源说:“HyperCard在当时非常引人注目,这是一款众人皆知的超链接程序,但只能在Mac上运作...而我当时甚至连一台Mac都没有”。由于当时仅能使用X终端,魏培源使用X终端英语X terminal于1990年创造了第一个版本的Viola语言:“我拿到了一本HyperCard手册来参考,基本上就是采纳了其中的概念并将其实现出来......”[4]

ViolaWWW历史

[编辑]

毕业后魏培源与XCF及创业伙伴一起继续开发Viola[4][5]。随后其接受了奥莱利公司的投资,这是一家美国电子出版公司。奥莱利公司使用了其软件以显示旗下网站全球网络导航器[6]。魏培源的主要工作是创建一个适用于互联网的Viola版本:

X Window是一个基于UNIX的操作系统,其内建了TCP/IP协议,所以支持互联网是很合乎常理的,问题是如何通过互联网传输他的Viola页面,他当时已近乎独立发明出网络超文本技术。就在那时,魏培源读到了蒂姆关于万维网的邮件,认为URL非常、非常聪明,这正是他所需要的,并向蒂姆发了一封邮件说他正在考虑为X Window编写一个浏览器。蒂姆在1991年12月9日回复www-talk的邮件中说:听起来不错。四天后,魏培源在www-talk上宣布他已经做出了浏览器。

——Gillies和Cailliau[4]

ViolaWWW于1992年发布,是第一个添加扩展功能的浏览器,如嵌入式脚本对象、样式表和表格。早期版本在CERN获得了诸多好评[4]。Ed Kroll在他1992年的畅销著作《Whole Internet User's Guide and Catalog》中也重点介绍了该浏览器。随着ViolaWWW的开发,开始与HyperCard越来越相似:

ViolaWWW有一个书签功能让你可以追踪自己喜欢的页面,还有前进和后退按钮,以及历史记录功能可以保存你访问过的网站。随着时间的推移,还添加了显示表格和图形功能,到了1993年5月,甚至可以直接运行程序。

——Gillies和Cailliau[4]

ViolaWWW基于Viola工具包开发,该工具包是用于开发与支持视觉交互式媒体应用的工具。Viola在X Window下运行,早在1992年就能用于建构复杂的超媒体应用程式,并具备小程序和其他交互式内容等功能 [7]

虽然ViolaWWW奠定了万维网的发展基础[8],但由于仅能在X Window系统上执行,使其无法与随后将网络推向主流的Mosaic浏览器竞争[9]。除此之外,Mosaic对于当时大多数人使用的电脑而言更易于安装[8]。Mosaic最初是为UNIX系统开发,但很快就被移植到了Microsoft Windows平台[10],而ViolaWWW则从未在该平台上运行。

首创功能

[编辑]

Viola是第一个拥有如下功能的浏览器[8]

  • 客户端文件插入,内嵌式框架及类Javascript输出
Viola式内嵌框架 指定对象
<INSERT SRC="a_quote.html">
<object type="text/html" data="a_quote.html">
<p>如果浏览器不支持对象,本文字将会显示</p>
</object>
  • 一个简单的样式表机制用于指定文档中的样式资讯,例如字体颜色,对齐方式。早在1998年CSS样式表开发之前已经在Viola中实现了。
Viola式样式表 CSS样式表
 (BODY,INPUT,P   FGColor=black
                 BGColor=grey70
                 BDColor=grey70
                 align=left

 (H1             FGColor=white
                 BGColor=red
                 BDColor=black
                 align=center

 body, input, p {
  color: black;
  background-color: #707070;
  text-align: left;
}

 h1 {
  color: white;
  background-color: red;
  border: solid 1px black;
  text-align: center;
}
  • 一个侧边栏用于显示网页中的元资讯,如网页内部导航链接等。类似但不那么复杂的侧边栏功能也出现在一些现代浏览器中。
  • 一个HTML文档可以调用的脚本语言,让网页文档可以嵌入高度可交互的脚本及小程序,其可以被视为JavaScript嵌入对象的先驱。
ViolaWWW实现语法 JavaScript实现语法
脚本
\class {txtDisp}
\name {showTime}
\script { switch (arg[0]) {
  case "tick":
    set("content"), date());
    after(1000, self(), "tick");
    return; break;
  case "init":
    after(1000, self(), "tick");
    break;
  }
  usual();
}
\width {100}
\height {50} \
function showTimeInDoc() {
  var theTime = document.getElementById('theTime');
  var date = new Date();
  theTime.innerHTML = date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds();
  setTimeout(showTimeInDoc, 1000);
}
将脚本插入网页
<HTML>
<HEAD>
</HEAD>
<BODY>
<P>And, the time now is:
<LINK REL="viola"
HREF="showTime.v">
</BODY>
</HTML>

<html>
  <head>
    <script type="text/javascript" src="showTime.js"></script>
  </head>
  <body onload="showTimeInDoc()">
    <p id="theTime">&nbsp;</p>
  </body>
</html>

参考文献

[编辑]
  1. ^ 1.0 1.1 1.2 1.3 Tim Berners-Lee. What were the first WWW browsers?. World Wide Web Consortium. [2010-06-15]. (原始内容存档于2018-10-03). 
  2. ^ See Viola in a Nutshell页面存档备份,存于互联网档案馆) for details.
  3. ^ Pei-Yuan Wei. ViolaWWW Hypertext Browser. [28 July 2010]. (原始内容存档于2021-06-22). 
  4. ^ 4.0 4.1 4.2 4.3 4.4 4.5 James Gillies; R. Cailliau. How the Web was born: the story of the World Wide Web. Oxford University Press. 2000: 213–217. ISBN 978-0-19-286207-5. 
  5. ^ WWW people. World Wide Web Consortium. [28 July 2010]. (原始内容存档于2017-07-13). 
  6. ^ 奥莱利, Tim. Why Kindle Should Be An Open Book. Forbes. 23 February 2009 [2016-01-14]. (原始内容存档于2016-03-03). 
  7. ^ 存档副本 (PDF). [2016-01-14]. (原始内容存档 (PDF)于2012-02-15). 
  8. ^ 8.0 8.1 8.2 Berners-Lee, Tim. A Brief History of the Web. World Wide Web Consortium. 9 August 1997 [c.1993] [17 August 2010]. (原始内容存档于2010-12-29). 
  9. ^ Mosaic -- The First Global Web Browser. [2010-07-28]. (原始内容存档于2007-07-02). 
  10. ^ Freedman, Alan. Computer Desktop Encyclopedia, 9th Edition. New York: Osborne, 2001, p. 629

外部链接

[编辑]