All Projects → wenyan-lang → Wenyan

wenyan-lang / Wenyan

Licence: mit
文言文編程語言 A programming language for the ancient Chinese.

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to Wenyan

SuPar-Kanbun-1.3.4
Tokenizer POS-tagger and Dependency-parser for Classical Chinese
Stars: ✭ 14 (-99.92%)
Mutual labels:  classical-chinese
UD-Kanbun
Tokenizer POS-tagger and Dependency-parser for Classical Chinese
Stars: ✭ 41 (-99.77%)
Mutual labels:  classical-chinese
wyg
文淵閣 Package manager for wenyan-lang
Stars: ✭ 29 (-99.84%)
Mutual labels:  wenyan-lang
ide
文言齋 Online IDE for wenyan-lang
Stars: ✭ 25 (-99.86%)
Mutual labels:  wenyan-lang

文言 wenyan-lang

npm build Netlify Status

wy-lang.org | Wiki | The Book

English | 简体中文 | 繁體中文

文言文編程語言。A programming language for the ancient Chinese. Try it online.

CHANGELOG

之世,結繩而足治,屈指而足算。是時豈料百代之後,計算機械之巧,精於公輸木鳶,善於武侯流馬;程式語言之多,繁若《天官》之星宿,奇勝《山經》之走獸。,或以速稱。,各爭文采。方知鬼之所以夜哭,天之所以雨粟。然以文言編程者 ,似所未有。此誠非文脈之所以傳,文心之所以保。嗟予小子,遂有斯志。然則數寸之烏絲猶覆於頭,萬卷之素書未破於手;一身長羈於遠邦,兩耳久曠于雅言。然夫文章者吾之所宿好,程式者偶承時人之謬譽。故希孟不慚年少,莊生不望無涯。乃作斯言。誠未能嘔瀝長吉心血,亦庶幾免於義山流沫。既成之後,復學干將鑄劍而自飼,越王嚐糞而當先。自謂偶追《十書》之筆意,但恨少八家之淋漓。此子山所謂士衡撫掌而甘心,平子見陋而固宜。然則雖實覆甕之質,尚存斧正之望;雖乏呂相之金,易字之渴蓋同。此亦開源之大義,吾輩之所以勉勵也。一笑。

Helloworld

Wenyan:

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

Equivalent JavaScript:

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

Output:

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

Punctuations and newlines are completely optional (just like they are in Classical Chinese), so the above code is equivalent to:

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

More sophisticated examples, such as the Sieve of Eratosthenes, Quicksort, Mandelbrot set, and Tower of Hanoi, can be found in the ./examples folder.

Features

Try it out

The Online IDE

Text Editor Plugins

Command Line Compiler

Install the compiler by

npm install -g @wenyan/cli

Try run the included examples, e.g.:

wenyan examples/helloworld.wy
# will output: 問天地好在。

The Decompiler

You can now translate JavaScript to wenyan-lang using the wenyanizer by zxch3n.

3rd Party Compilers

Documentation

Check out our Wiki pages

Contributors

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].