出品OSC社区(ID:OSCHINA2013) 本期Awesome系列给大家介绍下中国人主导的编程语言。 1、洛书国产中文编程语言 洛书编程语言旨在打造开源、高效、强大的国产中文编程语言。 项目地址:https:www。oschina。netplosu 2、ReScript类型化JavaScript ReScript是一种强大的类型化语言,可以编译成高效且可读性高的JavaScript。ReScript包含了一个快速的编译器工具链,可以扩展到任何代码库的大小。 示例代码 ReScript编写:moduleButton{react。componentletmake(count:int){lettimesswitchcount{1once2twicenBelt。Int。toString(n)times}letmsgClickmetimesbutton{msgReact。string}button}} 编译为JavaScript:varReactrequire(react);functionPlaygroundButton(Props){varcountProps。vartimescount!1?(count!2?String(count)times:twice):varmsgCreturnReact。createElement(button,undefined,msg);}varButton{make:PlaygroundButton};exports。ButtonB 项目地址:https:www。oschina。netprescript 3、文言文言文编程语言 文言(wenyanlang)是一门采用文言文输入的编程语言,该语言不使用英文字符,仅包含繁体中文字符,并保留繁体引号。 项目地址:https:www。oschina。netpwenyanlang 4、Go为数据科学而生的编程语言 Go是一门适用于工程、STEM教育和数据科学的编程语言。主要特性包括:静态类型语言、与Go完全兼容、脚本化的风格,以及比Go更易于阅读的数据科学代码。 简单对比: GoPlus代码println〔1,2,3。4〕 Go代码packagemainimportfmtfuncmain(){fmt。Println(〔〕float64{1,2,3。4})} 项目地址:https:www。oschina。netpgoplus 5、凹语言国内Go开发者设计的实验性编程语言 凹语言(凹读音Wa)是国内Go开发者设计的实验性编程语言。发起者称其为披着Go和Rust语法外衣的C语言。 例子 项目地址:https:www。oschina。netpwalang 6、HVML可编程标记语言 HVML即HybridVirtualMarkupLanguage,能够让熟悉CC或其他编程语言的开发者可以通过HVML使用Web前端技术(如HTMLSVGMathML和CSS)轻松开发GUI应用程序。 项目地址:https:www。oschina。netphvml 7、CovScript跨平台脚本编程语言 CovScript是一门跨平台、开放源代码的动态类型脚本编程语言,具有高效、易懂、可靠的特点,充分吸收了现代编程语言研究的成果,与C、C等现代语言有良好的可交互性。 项目地址:https:www。oschina。netpcovscript 8、Calcit缩进语法的Clojure方言 Calcit是缩进语法的Clojure方言,基于Rust解释执行,支持编译为。mjs使用。 用法示例 Snippetsevaling:crerange100 multilinessnippet:creprintlnademorange100mapfn(x)xx Runwithacompact。cirru:crcompact。cirru1runonlyoncecrcompact。cirruwatchmodeenabledbydefaultcrcompact。cirruinitfnapp。mainmain!specifyinginitfn 项目地址:https:www。oschina。netpcalcitlang 9、Cicada(蝉语)依赖类型编程语言 Cicada(蝉语)是一门依赖类型编程语言,一个交互式定理证明器。蝉语项目主要是为了帮助大众理解开发软件和研究数学事实上是同一类活动,实践这两项活动的人可以相互学习,并以非常好的方式相互帮助。 示例代码 将自然数定义为归纳数据类型(inductivedatatype)。datatypeNat{zero:Natadd1(prev:Nat):Nat}functionadd(x:Nat,y:Nat):Nat{returnrecursion(x){casezeroycaseadd1(prev,almost)add1(almost。prev)}} 项目地址:https:www。oschina。netpcicadalang 10、Aya形式化数学编程语言 Aya是一种编程语言和证明助手,专为形式化数学和类型导向编程而设计。Aya的类型系统具有类似于Arend的同源性(homotopical)特征、重叠但汇合的模式匹配以及对定义等式(definitionalequalities)的抽象。 项目地址:https:www。oschina。netpaya 11、OpenBlock可视化块编程语言 OpenBlock是可视化块编程语言,是一门希望通过将编程简化、将业务逻辑可视化的图形化编程语言,语言特性上有Erlang和Smalltalk的影子,语法层面借鉴了Scratch,使用Blockly作为语言前端。 项目地址:https:www。oschina。netpopenblock 12、草蟒基于Python的全中文编程语言 草蟒是Python汉化版,开发草蟒的目的是消除英语门槛,提供一种简单自然、易学易用、功能强大、应用广泛的中文编程语言,让普通国人能自由地使用母语进行编程。 示例:列表型和枚举函数水果〔香蕉,苹果〕水果。追加(梨)列表型(枚举(水果))〔(0,香蕉),(1,苹果),(2,梨)〕 项目地址:https:www。oschina。netpgrasspy 13、木兰编程语言基于Python实现的编程语言 木兰编程语言是基于Python实现的编程语言,木兰源代码转换为Python的中间表示(AST)后执行,可实现各种语法设计与周边功能,并可方便地利用Python现有生态。 代码中可以直接调用现有Python库,如下调用了草蟒的中文API: 项目地址:https:www。oschina。netpmulanrework 14、KCL开源配置策略语言 Kusion配置语言(KCL,KusionConfigurationLanguage)是一种开源配置语言,主要用于KusionStack开放协同技术栈。并且KCL是一种基于声明性和面向对象编程(OOP)范式等概念,用于配置和策略场景的静态类型语言。 项目地址:https:www。oschina。netpkcl 15、气(Qi)轻量级中文编程语言 气(Qi)是一种轻量级、快速、开源的中文编程语言。作者表示,他希望这种语言能够快速、轻巧,并且完全透明,就像空气一样。示例 HelloWorld:使用Qi编写的Hello,World!程序:系统。打印行(你好,世界) 保留关键字打断继续类切换案例预设否则功能而对于如果空返回超真假这变量和或等不等打等小等 项目地址:https:www。oschina。netpqilang