文言 文言文编程语言

开源网站开源项目 24-06-16 17:10:29

文言(wenyan-lang)是一门采用文言文输入的编程语言,该语言不使用英文字符,仅包含繁体中文字符,并保留繁体引号「」。

特性

采用 NLP 共享古典汉语语法

编译为 JavaScript 或 Python

图灵完备

提供了在线 IDE:http://wenyan-lang.lingdong.works/ide.html

提供入门示例

语法定义

变量

wenyan JavaScript

吾有一數。曰三。名之曰「甲」。var a = 3;有數五十。名之曰「大衍」。var dayan = 50;昔之「甲」者。今「大衍」是也。a = dayan;吾有一言。曰「「噫吁戲」」。名之曰「乙」。var b = "alas!";吾有一爻。曰陰。名之曰「丙」。var c = false;吾有一列。名之曰「丁」。var d = [];吾有三數。曰一。曰三。曰五。名之曰「甲」曰「乙」曰「丙」。var a=1,b=3,c=5;

控制

wenyan JavaScript

若三大於二者。乃得「「想當然耳」」也。if (3>2){ return "of course"; }若三不大於五者。乃得「「想當然耳」」。若非。乃得「「怪哉」」也。if(3<=5){return "of course"}else{return "no way"}為是百遍。⋯⋯ 云云。for (var i = 0; i < 100; i++){ ... }恆為是。⋯⋯ 云云。while (true) { ... }凡「天地」中之「人」。⋯⋯ 云云。for (var human of world){ ... }乃止。break;

运算

wenyan JavaScript

加一以二。1+2加一於二。2+1加一以二。乘其以三。(1+2)*3除十以三。所餘幾何。10%3減七百五十六以四百三十三。名之曰「甲」。var a = 756-433;夫「甲」「乙」中有陽乎。a || b夫「甲」「乙」中無陰乎。a && b

容器

数组从 1 开始索引。

wenyan JavaScript

吾有一列。名之曰「甲」。充「甲」以四。以二。var a = []; a.push(4, 2);銜「甲」以「乙」。以「丙」a.concat(b).concat(c);夫「甲」之一。a[0]夫「甲」之其餘。a.slice(1);夫「玫瑰」之「「名」」。rose["name"]夫「寶劍」之長。sword.length;

函数

wenyan JavaScript

吾有一術。名之曰「吸星大法」。是術曰。⋯⋯是謂「吸星大法」之術也。function f(){...}吾有一術。名之曰「六脈神劍」。欲行是術。必先得六數。曰「甲」。曰「乙」。曰「丙」。曰「丁」。曰「戊」。曰「己」乃行是術曰。⋯⋯是謂「六脈神劍」之術也。function f(a,b,c,d,e,f){...}吾有一術。名之曰「翻倍」。欲行是術。必先得一數。曰「甲」。乃行是術曰。乘「甲」以二。名之曰「乙」。乃得「乙」。是謂「翻倍」之術也。function double(a){var b = a * 2; return b;}

Helloworld demo

Wenyan:

吾有一數。曰三。名之曰「甲」。為是「甲」遍。吾有一言。曰「「問天地好在。」」。書之。云云。

等效 JavaScript:

var n = 3;for (var i = 0; i < n; i++) {console.log("問天地好在。");}

输出:

問天地好在。問天地好在。問天地好在。

同时,标点和换行符是完全可选的,与古汉语一致,上面的代码等效于:

吾有一數曰三名之曰「甲」為是「甲」遍吾有一言曰「「問天地好在」」書之云云

[文言 文言文编程语言]相关推荐
Pando Python 的 Web 框架

Pando Python 的 Web 框架

Pando 是一个 Python 的 Web 框架,简单是其最大的吸引力。 Step 1: 启动沙盒 $virtualenvfoo$cdfoo$.bin……...

listmonk开元邮件营销平台

listmonk开元邮件营销平台

listmonk是一个高性能、自托管的邮件营销平台,具备现代化的界面和功能。它可帮助你管理邮件订阅者、创……...

Gensim 主题模型 Python 工具包

Gensim 主题模型 Python 工具包

Gensim是一个相当专业的主题模型Python工具包。在文本处理中,比如商品评论挖掘,有时需要了解每个评论分……...

ADOP 可微神经渲染管道

ADOP 可微神经渲染管道

ADOP 全称Approximate Differentiable One-Pixel Point Rendering,是一种新的基于点的可微(differentia……...

Morpheus 新一代 web 发布平台

Morpheus 是用 React.js 创建的新一代 web 发布平台。 Morpheus 在第一次加载完全是在服务器端渲染。当一……...

今日开源
  1. Arbiter 机器学习算法评估工具

    专门用于评估和调整机器学习模型的工具。 用于企业的 DL4J 机器学习套件/深度学习工具的一部分。 Arbiter 包含以下模块: arbiter-core arbiter-deeplearning4j Arbiter 的开源版本目前定义了两种超参数优化方法……

    开源软件 2024-06-25

  2. Qbo 开源Linux机器人

    Qbo机器人项目首席开发者Francisco Paz表示他们的目标是开发出一种低成本、可修改的机器人平台,用于人工视觉、语音识别和语音合成研究。Qbo的外形十分可爱,移动起来也相当敏捷,用 Paz的话说,“有点像猫或……

    开源软件 2024-06-25

  3. Havok 游戏开发工具包

    Havok 游戏开发工具包

    Havok引擎,全称为Havok游戏动力开发工具包(Hvok Game Dynamics SDK),一般称为Havok,是一个用于物理系统方面的游戏引擎,为电子游戏所设计,注重在游戏中对于真实世界的模拟。使用撞击监测功能的Havok引擎可……

    开源软件 2024-06-25

返回顶部小火箭