【转载】你必须知道的10种国产编程语言
你必须知道的10种国产编程语言
——一个老程序员的心声:我们必须要有国产的编程语言
众所周知,编程语言是外国人的天下,我们一入行,就失去了选择的余地,你不得不跟着外国人的思维转。
笔者从事多年的开发工作,尝试了十几种外国的编程语言,每种编程语言都有自己的特性和固有的缺陷,对其固有缺陷,我们只能望洋兴叹,因为,这些编程语言的设计者和开发者无一例外全是外国人,这里,并没有我们的发言权。
这是一个靠标准取胜的时代,对于编程语言的控制,就是对于标准的控制,我希望能看到更多的中国人加入到这场角逐中来。
我们欣喜的看到,现在也有越来越多的中国人加入到了语言设计的行列中来,虽然他们设计的语言有这样那样的不足。但是,他们的出现,代表了一种尝试,也代表了一种希望。
世界是多样化的,我们需要更多的选择,编程语言也不例外。
下面是笔者工作多年接触到的一些国产编程语言,现分列如下,包括一些简单的介绍,这些介绍主要来自语言设计者自己的描述。笔者本人也加入了一些简单的评论,不代表语言的优劣,如有纰漏,文责自负。
当然,这里列出的还远远不够全面,这只是为了抛砖引玉,引起更多的人来关注,希望大家也一起来关注国产编程语言的发展、以至成熟。
让我们一起来见证这个时代的来临。
〓〓〓〓〓〓〓〓〓〓〓〓
〓十种国产编程语言〓
〓〓〓〓〓〓〓〓〓〓〓〓
八卦编程语言
http://baguic.163.net
csm语言
http://csm.zg66.com/csm
dao语言
http://xdao.org/english
http://www.newsmth.net/pc/index.php?id=phunyx
易语言
http://www.dywt.com.cn/product.asp
Koodoo 语言
http://www.bluespace.com.cn/koodoo/article_koodoo.htm
lava语言
http://www.ggv.com.cn/faq/lava
鲁班语言
http://project.soft114.com/lubankit/index_chinese.html
模拟精灵LAScript脚本语言
http://www.yhhe.net/ape
Nuva语言
http://www.macrobject.com
太极语言
http://blog.csdn.net/universee
其他基于非原创语言多中文编程语言
http://www.chinesepython.org/cgi_bin/cgb.cgi/exits/otherprograms.html
〓〓〓〓〓〓
〓简介〓
〓〓〓〓〓〓
【八卦编程语言】
http://baguic.163.net
八卦编程语言是一种不依赖特定自然语言的通用的可视编程语言.
英文名称是Baguic,以GUI(图形用户界面)替换Basic中的 Symbolic Instruction.
八卦编程语言的目标就是以图形界面化的方法完成Basic语言的基本功能.
八卦编程语言是一种图标语言,用它编制程序的过程实际上是对图标的操作过程.
【csm语言】
http://csm.zg66.com/csm
csm是由我设计的一种强类型的基于对象的编译型脚本语言.你可以读作C,S,M,也可读作"辛姆"或"森姆",它的含义是指c sharp minus.
csm是一种脚本语言,所以它的功能比宿主语言弱,从它的名称可以看出,它的大部分语法与C#相同.它的语义与C++/java/c#这些语言都有相似的地方,它的设计目标是"简单而强大".
csm是强类型的,也就是说它有自己的类型,在编译时要进行相应的类型检查.
csm是基于对象的,不是面向对象的,面向对象有三个特征,封装、继承、多态,csm都不支持,csm只支持类与对象的概念,它所定义的类只有一个层次,没有父类或派生类.
作为脚本语言,csm必须存在于一个宿主环境中,它就是软件厂商开发后发布给用户的应用程序,就是说csm为所开发的应用程序提供脚本支持,使应用程序具有可定制或二次开发的功能.
【dao语言】
http://xdao.org/english
http://www.newsmth.net/pc/index.php?id=phunyx
Dao is an object-oriented scripting language with dynamic-typing variables supporting complex data structures.
Dao also provides string regular expression matching functionality with direct syntax supports. It has built-in numerical data types such as complex number and multi-dimensional numeric array, and their
corresponding operations and computations are very convenient in Dao.
Multithreaded programming is an integrate part of Dao, and is also very easy to use.
Moreover, it can be very easily extended by writing your own C++ modules, which can be loaded dynamically in the Dao scripts, and your own C++ objects can be created and used in a similar way as Dao
objects. The embedding of Dao into other C++ programs is also straightforward.
【易语言】
http://www.dywt.com.cn/product.asp
易语言是一个自主开发,适合国情,不同层次不同专业的人员易学易用的汉语编程语言。
易语言降低了广大电脑用户编程的门槛,尤其是根本不懂英文或者英文了解很少的用户,可以通过使用本语言极其快速地进入Windows程序编写的大门。
易语言汉语编程环境是一个支持基于汉语字、词编程的、全可视化的、跨主流操作系统平台的编程工具环境;拥有简、繁汉语以及英语、日语等多语种版本;能与常用的编程语言互相调用;具有充分利用API,COM、DLL、OCX组件,各
种主流数据库,各种实用程序等多种资源的接口和支撑工具。
【Koodoo 语言】
http://www.bluespace.com.cn/koodoo/article_koodoo.htm
欢迎进入Koodoo的世界, Koodoo是一种脚本语言, 特别擅长快速构造IVR(自动语音应答)、呼叫中心等语音方面的应用.
当然,Koodoo也是一种通用的脚本语言,除了面对语音方面的应用外,也可以进行文件操作、数据运算、网络通讯、数据库操作等各种应用,对这些问题都有简单的解决方法。而且,Koodoo语言天然地支持多线程,支持线程之间的通
讯,所谓线程对应着语音应用中的线路。所以可以使用Koodoo语言开发数据服务、通讯服务、座席服务等网关应用。
Koodoo是一个设计精巧的高级语言,Koodoo很容易学习,它有类似C语言的简明、清晰语法,它又是一种高效率的动态脚本语言,借鉴了AWK, Python等脚本语言的精华,使用它进行开发是一个愉快的过程,Koodoo是一种南非条纹羚羊
的名字,音Kudu--其实也写作Kudu,虽然没有python那么凶猛,却也是我们这个蓝色星球上一种美丽的动物,我们借用了它的名字。
就让我们跟随Koodoo,开始语音开发的浪漫之旅吧。
【lava语言】
http://www.ggv.com.cn/faq/lava
LAVA就是Lee(开发者的笔名)和JAVA的简称.
LAVA是一种伪编译的语言(这一点与JAVA相同,除此之外在语法上没有任何关系).
LAVA的语法极其类似c(但还是有一些不同).
LAVA程序在电脑端伪编译后,生成由一系列伪指令(伪指令长度一般为1~5字节)组成的lav文件.
lav文件通过文曲星端的LAVA解释器执行.
【鲁班语言】
http://project.soft114.com/lubankit/index_chinese.html
鲁班是一个面向部件的整合语言(Component Oriented Scripting Language). 鲁班语言是自由源码公开语言.
鲁班的命名一是为了纪念中国历史上最伟大的土木工程师, 二是为了凸显鲁班语言和鲁班建筑工艺的神似之处鲁班是由中国人发明的计算机编程语言. 鲁班的发明人现居美国.
世界上现有的编程语言很多, 但是并不意味着我们的工具已经完全得心应手. 鲁班的发明人觉得整合语言(Scripting Language)有很大的潜力. 因为容易上手容易推广应用. 但是比较起复杂的语言象C++/Java, 整合语言有一个很大的
弱点, 就是没有一个适合的部件模型(Component Model). 就象在沙子上做东西, 容易开始, 可做不大. 鲁班语言的发明正为了填补这个空缺.
鲁班是一个面向部件的整合语言. 它的语法简洁, 比一般的整合语言更易学易用. 同时鲁班又提供一个简单而又强大的部件模型. 在有必要的时候, 用户可以很容易的把鲁班代码组织成不同的部件以支持共享和再用.
简而言之, 鲁班兼有整合语言的可用性和编译语言的可管理性.
【模拟精灵LAScript脚本语言】
http://www.yhhe.net/ape
LAScript是基于lua的子语言、兼容lua基本语法。
http://www.yhhe.net/ape/book/fap/las/hw.html
【Nuva(女娲?)语言】
http://www.macrobject.com
Nuva 是一种面向对象的动态脚本语言,它的设计目的是用于基于模板的代码生成。除了用于代码生成领域外,Nuva语言也能用于开发应用程序,如文本和数据处理、GUI 应用程序等。
Nuva 语言的设计目的是用于基于模板的代码生成,因此 Nuva 语言中包含了专门用于模板的语言元素,编写模板更为灵活方便。
Nuva 虚拟机内置了正则表达式引擎,能够方便的进行文本处理。
Nuva 虚拟机内置了 O/R Mapping 引擎,您可以通过面向对象的方式直接存取数据库架构和数据。
Nuva 虚拟机内置了基于 HTML/XML 的界面引擎,能够方便的编写 GUI 应用程序 (Macrobject CodeAuto 就是用 Nuva 语言编写的)。
【太极语言】
http://blog.csdn.net/universee
太极语言语法描述形式与C/C++类似,目前太极语言的设计已有多方面超过了C++,比如面向概念的程序设计,代码组合机制……等等(当然目前还有不少不足,我会继续完善)。
太极语言既可以编译执行也可以解释执行,而且编译时是由解释执行的太极语言程序描述控制的,这对GP的实现非常有好处。
C++ templates虽然是图灵完备的,但描述能力非常不令人满意,C++0x虽有所改观,但是仍然有很大的局限性;太极语言用自控型编译技术非常好的解决了这个问题——完备的自己控制自己的编译。
〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
〓其他基于非原创语言的中文编程语言(汉化版本)〓
〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
还有一些基于一些原有语言的汉化版本,大多支持中文编程,也一起收集起来,供大家参考。
http://www.chinesepython.org/cgi_bin/cgb.cgi/exits/otherprograms.html
〓〓〓〓〓〓〓〓〓〓〓
〓笔者简陋的评述〓
〓〓〓〓〓〓〓〓〓〓〓
由于其中的一些编程语言,市面上很难看到有什么应用,笔者也难以对其加以评论,下面仅仅评论一些有实际应用的编程语言。
【易语言】
易语言是一种应用极为广泛的编程语言,笔者甚至能看到有众多的共享软件也是采用它编写的。
易语言采用汉语编程,这也是它引来争议的原因之一,很多人认为汉字输入速度较慢,但是易语言的开发工具提供了一种快速输入汉字的输入法,很好的解决了这个问题。
易语言的表格式参数是其一个很大的亮点,具有非常好的可读性。类似流程图的结构表现形式也非常不错,不过现在的大多数IDE也支持很好的表现结构化的形式,但是明显易语言的创意要早于他们。
笔者认为,易语言有一个明显的缺陷,就是源码默认不是采用文本文件的方式保存,并且也没有一个单独的编译器,而是捆绑了一个巨大的IDE,使得易语言的源代码不能脱离IDE单独编辑、编译。我想,如果易语言能够很好的解决这
个问题,那么对于易语言的普及推广将是十分有益的。
【lava语言】
lava语言定位于文曲星上的软件开发,的确独具慧眼,其强大的图形库使得文曲星上的软件开发也的确变得非常容易。采用C语言的语法风格,但是又去除了有关C的一些“丑陋”语法,也不怪作者要自比Java了。
【LAScript语言】
作为一种准开发工具,模拟精灵有着非常广泛的应用,特别在初学者中十分流行。其携带的LAScript语言也随着模拟精灵的广泛传播而逐渐流行。
LAScript作为一个基于Lua语言的子语言,已经可以称得上一个真正的现代编程语言,具备了结构化编程和面向对象编程的诸多特性。
ApeML界面描述语言也非常有特色,采用html作为界面,应该是未来的方向。下面将要介绍的Nuva语言也是采用html作为界面描述语言,看样子是大势所趋啊。
【Nuva语言】
Nuva语言的语法非常简单,很像伪码,而且各种结构能够任意嵌套,的确灵活。
Nuva语言支持全面的面向对象编程,支持基于html的界面(呵呵,Vista?),也支持O/R Mapping(不知道是否类似于Lua?)。
Nuva语言可能还是一个新生的编程语言,应用并不广泛,笔者能够看到有源码的应用仅仅是CodeAuto(一个代码生成器,笔者感觉确实好用,跟CodeSmith有一比)。
〓〓〓〓〓〓〓
〓结束语〓
〓〓〓〓〓〓〓
其他的一些编程语言,可能大多数还处于概念期,也有一些示例代码可以下载,但是基于缺乏明显的应用案例,笔者也就不再多做评论了,但是这不代表他们没有什么亮点,也许可能恰恰相反哦。
上面的评论纯属个人意见,如有谬误,欢迎批评。
请大家一起来关注国产编程语言的发展吧!
【转载】你必须知道的10种国产编程语言相关推荐
- 你必须知道的10种国产编程语言
你必须知道的10种国产编程语言 你必须知道的10种国产编程语言 --一个老程序员的心声:我们必须要有国产的编程语言 众所周知,编程语言是外国人的天下,我们一入行,就失去了 ...
- 数据库:学好SQL必须知道的10个高级概念
今天给大家分享学好SQL必须知道的10个高级概念. 1.常见表表达式(CTEs) 如果您想要查询子查询,那就是CTEs施展身手的时候 - CTEs基本上创建了一个临时表. 使用常用表表达式(CTEs) ...
- 网页最少要有一个html标签,PHP_网页开发人员必须知道的10个不常用HTML标签, 网页开发人员常常希望能 - phpStudy...
网页开发人员必须知道的10个不常用HTML标签 网页开发人员常常希望能够了解并掌握多种语言,结果是,学习一门语言的所有内容是棘手的,但是却很容易发现你并没有完全利用那些比较特殊却很有用的标签. 不幸的 ...
- 每个程序员都必须知道的8种通用数据结构
云栖号资讯:[点击查看更多行业资讯] 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 数据结构是一种特殊的组织和存储数据的方式,可以使我们可以更高效地对存储的数据执行操作.数据结构在计 ...
- 要成为职业摄影师 你必须知道的10个真相
要成为职业摄影师 你必须知道的10个真相 佳能(中国)职业摄影师 Steve Giralt,每年都会为修读摄影课的学生讲解现实世界中商业摄影的运作,以下摘选他教给学生的10个社会现实,如果你也希望修读 ...
- 移动测试工程师必须知道的10个开源框架
移动测试工程师必须知道的10个开源框架 作者:彭海波 前言 随着移动互联网的发展,移动测试技术越来越成熟,很多优秀的开源测试框架涌现出来.作为一个移动测试工程师,我们不仅要夯实自己的技术能力,也要学会 ...
- 成长中必须知道的10个故事 也是做人,做营销必须知道的故事:
成长中必须知道的10个故事 也是做人,做营销必须知道的故事: 1.断箭 不相信自己的意志,永远也做不成将军. 春秋战国时代,一位父亲和他的儿子出征打战.父亲已做了将军,儿子还只是马前卒.又一阵号角吹 ...
- 成长中必须知道的10个故事 也是做人,做营销必须知道的故事
成长中必须知道的10个故事 也是做人,做营销必须知道的故事: 1.断箭 不相信自己的意志,永远也做不成将军. 春秋战国时代,一位父亲和他的儿子出征打战.父亲已做了将军,儿子还只是马前卒.又一阵号角吹 ...
- 程序员们都必须知道的8种通用数据结构
数据结构是一种特殊的组织和存储数据的方式,可以使我们可以更高效地对存储的数据执行操作. 数据结构在计算机科学和软件工程领域具有广泛而多样的用途. 几乎所有已开发的程序或软件系统都使用数据结构. 此外, ...
- 每个程序员都必须知道的8种数据结构
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | http://suo.im/6oo92L 快速 ...
最新文章
- 事物的级别_浅谈MySQL并发控制:隔离级别、锁与MVCC
- 重新想象 Windows 8.1 Store Apps (79) - 控件增强: MediaElement, Frame
- python3 time模块与datetime模块
- MSN Editor 0DAY
- 用c语言计算sin x 的值,用泰勒公式求sin(x)的近似值
- 基于java的网上花店销售系统_基于web的花店销售系统的设计与实现
- LDAP----manage-account
- 我只是一个程序代码员吗?
- 《笨方法学python》_《笨办法学Python》 第46课手记
- (100)Verilog HDL:UART波特率设计
- 如果你手头有20万,你是拿去买房还是拿去投资?
- android api接口封装,android-apidesigner是一个网络接口封装工具
- 图像金字塔实现图像融合(基于opencv-python)
- 奥克兰大学 计算机硕士 GPA,奥克兰大学GPA
- vue+elementUI 表格下载为excel
- sci国外期刊投稿过程(已完结)
- 微信小程序自动生成打卡海报
- 北京利达消防设备调试软件
- 杭电2566_统计硬币——java
- 连接池原理--文章一
热门文章
- ADF单位根检验三种形式_【EViews】面板数据的处理方法及检验步骤
- m 序列性质的简单证明
- 九章云极DataCanvas公司荣获机器之心三大奖项,助力产业数智化升级
- linux开发板增加adb功能
- 显示器接口_显示器接口 - CNZHIQIANG
- 无法从服务器获取视频文件,视频从云服务器获取视频文件
- 【FFmpeg4.1.4 编码】h265编码
- freeradius mysql ad_freeradiusmysql简单配置一例
- 独创圆柱形投影,索尼高透光HOE全息显示方案详解
- 手心输入法漏洞绕过win8登陆验证