The Curl Programming Language

The Curl Programming Language

概述 | 语言特性 | 应用领域 | 优点 | 缺点 | 示例程序 | 供应商 | 学习成本

概述

    Curl是由美国国防部和麻省理工学院共同研究开发的Web开发语言。目前它的拥有者是Curl.Inc(www.curl.com);目标是用一种统一的面向对象的语言代替HTML,Cascading Style Sheets,JavaScript等;仅使用Curl便可开发Web应用的各种软件;Curl程序在浏览器中运行,并且因为它以类似JRE的形式提供了客户端运行环境Surge RTE,能够轻松开发日益流行的Rich Client应用

语言特性

Curl是:

应用领域

Curl的目标是Web应用,并且是Rich Client,其竞争对手是Macromedia Flash,Java Applet;但与它们相比,Curl并没有得到广泛应用;有一则新闻可以从侧面说明这一点:

ISAC日本首款采用“Curl”Web语言的套装软件 2003/12/03

 
  【日经BP社报道】日本系统集成商ISAC于12月1日上市了Web考勤管理套装产品“自动考勤”。最大的特点是采用了Web语言“Curl”,与仅使用Web浏览器相比,提高了应用程序的易用性。被认为是日本国内首款采用Curl的套装软件。

  Curl是由美国国防部和麻省理工学院共同研究开发的Web开发语言。特点是用一种语言即可开发构筑Web应用时所需的各种软件,能够轻松实现可由客户端完成大部分处理的“富客户端”。Curl运行环境采用的是在Web浏览器中安装插件。

  自动考勤能够在Web浏览器上利用鼠标操作执行(1)上下班时间管理、(2)年假和补假等申请、(3)上司和人事部的批准和(4)弹性工作及轮班等一系列考勤管理业务。而且还在提高易用性上下了很大功夫,比如把鼠标移到考勤表上,光标指向的输入对象栏就会变色。

  ISAC之所以采用Curl,原因是该公司认为仅靠HTML等原来的Web技术,难以构筑操作性强的商用Web应用。“为了对Curl和Micromedia Flash进行可行性研究,组建了Curl开发团队和Flash开发团队,同时进行开发工作。结果,由于Curl开发团队的开发工作进度快得多,因此最后决定采用Curl”(关西分公司营业规划部科长吉田守)。

  价格自50万日元(约合人民币3.33万元,最多100用户)起。其中包括Curl的运行授权。服务器方面的标准使用环境是Linux、Apache、Tomcat、PostgreSQL,客户端为Windows、Internet Explorer。可从ISAC的Web站点下载“自动考勤”的体验版。(记者:田中 淳)

优点

  • 交互响应速度. Curl Applet和服务端之间传输的是代码,和少量的计算必须的数据,大量的计算过程是在客户端完成的,其交互响应速度类似桌面应用,优于传统Web程序 ;并且大量计算被移到客户端,减轻了服务器的负担,可以更好的支持大量连接
  • 专为Web设计的UI组件.外观感觉超过为桌面设计的Swing等
  • WebService SOAP支持. 客户端运行环境Surge RTE内置了对SOAP的支持,可以在Curl Applet中轻松使用WebService;而部分JVM需要安装扩展插件才能在Java Applet中使用WebService
  • 不同平台的表现一致性. 因为RTE为同一供应商提供,不会出现类似Java应用在不同JVM上表现不一致的情况
  • 版本独立. Curl应用可指定自己的兼容性,如果客户机上没有兼容的Surge RTE,Curl应用将停止运行,避免出现意外

缺点

  • 厂商依赖性. 目前只有一家厂商能够提供实现
  • 资源稀少. Curl未获得广泛应用,能够帮助学习的资源很少

示例程序

存取HashTable中的元素

{value
  || Declare and initialize a hash table.
  let my-hash-table:{HashTable-of String, int} =
  {new {HashTable-of String, int},
    "Apple", 56,
    "Banana", 87,
    "Cherry", 34
  }

  || Declare and initialize a VBox that we will use to
  || display the contents of the hash table.

  let message:VBox = {VBox}

  || For each element in the hash table, add the element
  || to the VBox.

  {for element:int in my-hash-table do
    {message.add element}
  }

  || Display the VBox.
  message
}

供应商

目前只有Curl Inc.提供了实现:Surge IDE & Surge RTE,最新版本是3.0.3,具有常用的编辑编译调试功能,Applet可视化开发环境

学习成本

  • 语法略显陌生,但对于有编程基础的开发者来说,掌握其语法并不困难,开发工具带的帮助提供了语法的完整描述;有面向对象或泛型编程语言经验的开发者两个星期左右可掌握
  • 类库分为两部分,核心类库(String,Collection,Math,DateTime,Regular Expression,Reflection),其它类库(GUI,File System,Network,Data Access等);类库的组织形式非常类似于JDK,.Net Framework,如:CURL.LANGUAGE.*,CURL.IO.*,CURL.XML.*等;开发工具带的帮助有部分示例,其网站也有示例,有JDK或.Net Framework经验的开发者两个星期左右的学习基本可开发小型应用
  • Applet可视化开发环境,较易上手;有可视化开发经验的开发者一两天即可掌握
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值