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是:
-
一种类似HTML的标记语言. Curl源文件由HTML标记和Curl代码组成,类似JSP.
-
一种类似Java的面向对象语言. Curl支持多重继承,内置垃圾收集机制.
一种支持参数化类的泛型编程语言
应用领域
Curl的目标是Web应用,并且是Rich Client,其竞争对手是Macromedia Flash,Java Applet;但与它们相比,Curl并没有得到广泛应用;有一则新闻可以从侧面说明这一点:
-
交互响应速度. 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可视化开发环境,较易上手;有可视化开发经验的开发者一两天即可掌握
分享到:
相关推荐
With the Elasticsearch real-time search and analytics engine, you can give your users this magical experience without having to do complex low-level programming or understand advanced data science ...
Plug-in PHP is packed with programming tips and suggestions for further adapting the functions to your own needs, and even breaks down all the variables, arrays and functions used by each into at-a-...
curl -fsSL https://github.com/nbuilding/N-lang/raw/main/install.sh | sh PowerShell(Windows): iwr https: // github.com / nbuilding / N - lang / raw / main / install.ps1 - useb | iex 安装特定版本 ...
/bin/bash -c " $( curl -fsSL https://raw.githubusercontent.com/StaticScript/StaticScript/master/install-ubuntu.sh ) " 要么 wget ...
echo( " Best city in the world? " ) selection = stdin () if selection == city { echo( " You might be biased... " ) } 实际观看: 让我们尝试获取我们的IP地址,并打印其部分的总和(如果它大于100)。这是...
curl my_file.json | emuto ' length ' 您在HackerNews上的业力 curl https://hacker-news.firebaseio.com/v0/user/kantord.json -s | emuto ' $.karma ' 将另一个命令的输出转换为JSON ls | emuto -i=raw ' $[0:-1...
MetaCall多语种运行时 | | MetaCall允许在多种编程语言之间调用函数,方法或过程。...安装安装MetaCall的最简单方法如下: curl -sL https://raw.githubusercontent.com/metacall/install/master/insta
Karuta HLS编译器作者:Yusuke ... $ curl -o install-karuta.sh https://raw.githubusercontent.com/nlsynth/karuta/master/install-karuta.sh ## Please take a quick look what this script does. You may have to
Wipple编程语言Wipple是一种用于构建DSL的编程语言,可以自然地进行读写,学习。... bash -c " $( curl -fsSL https://wipple.gramer.dev/install ) " Wipple安装到/usr/local/bin/wipple ; 您可能需要使用sudo 。
安装在Linux和macOS上,安装Nix的最简单方法是运行以下shell命令(以root用户以外的用户身份): $ curl -L https://nixos.org/nix/install | sh 上提供了有关其他安装方法的信息。建设与发展有关如何使用nix-build...
:books: 目录 :page_with_curl: 语言能力查看备忘单命令行界面势在必行功能性 :package: 后端查看备忘单PHPPythonJava脚本 :globe_with_meridians: 前端查看备忘单基本构架 :card_file_box_selector: 资料库查看...