文言文编程语言(wenyan-lang)蛮有趣,有同学玩过吗?

真古典啊…
这里有道例题:https://www.luogu.com.cn/problem/P1000
文言代码:

吾有一數。曰二十二。名之曰「高」。吾有一數。曰六十二。名之曰「宽」。
吾有一列。名之曰「图」。
吾有一言。曰「「#」」。名之曰「井」。吾有一言。曰「「.」」。名之曰「点」。
吾有一言。曰「「-」」。名之曰「减」。吾有一言。曰「「 」」。名之曰「空」。
吾有一言。曰「「*」」。名之曰「星」。

吾有一術。名之曰「画」。欲行是術。必先得五數。曰「甲一」。曰「乙一」。曰「甲二」。曰「乙二」。曰「字」。乃行是術曰。
    減「甲二」以「甲一」。加其以一。名之曰「甲」。
    減「乙二」以「乙一」。加其以一。名之曰「乙」。
    為是「甲」遍。
        吾有一數。曰「乙一」。名之曰「丙」。
        為是「乙」遍。
            乘「甲一」以「宽」。加其以「丙」。加其以一。名之曰「丁」。
            昔之「图」之「丁」者。今「字」是矣。
            加「丙」以一。昔之「丙」者。今其是矣。
        云云。
        加「甲一」以一。昔之「甲一」者。今其是矣。
    云云。
是謂「画」之術也。

吾有一術。名之曰「画点」。欲行是術。必先得三數。曰「甲」。曰「乙」。曰「字」。乃行是術曰。
    施「画」於「甲」。於「乙」。於「甲」。於「乙」。於「字」。
是謂「画点」之術也。

吾有一術。名之曰「画地」。欲行是術。必先得二數。曰「甲」。曰「乙」。乃行是術曰。
    加「甲」以八。名之曰「丙」。加「乙」以十三。名之曰「丁」。
    施「画」於「甲」。於「乙」。於「丙」。於「丁」。於「井」。
    吾有一列。名之曰「戊」。充「戊」以一。以三。以五。以七。
    凡「戊」中之「己」。
        加「己」以「甲」。名之曰「庚」。加「乙」以一。名之曰「丙」。加「乙」以十二。名之曰「丁」。
        施「画」於「庚」。於「丙」。於「庚」。於「丁」。於「点」。
    云云。
    加「甲」以一。名之曰「丙」。加「乙」以四。名之曰「丁」。施「画点」於「丙」。於「丁」。於「井」。
    加「甲」以一。名之曰「丙」。加「乙」以十一。名之曰「丁」。施「画点」於「丙」。於「丁」。於「井」。
    加「甲」以三。名之曰「丙」。加「乙」以三。名之曰「丁」。施「画点」於「丙」。於「丁」。於「井」。
    加「甲」以三。名之曰「丙」。加「乙」以八。名之曰「丁」。施「画点」於「丙」。於「丁」。於「井」。
    加「甲」以五。名之曰「丙」。加「乙」以六。名之曰「丁」。施「画点」於「丙」。於「丁」。於「井」。
    加「甲」以七。名之曰「丙」。加「乙」以二。名之曰「丁」。施「画点」於「丙」。於「丁」。於「井」。
    加「甲」以七。名之曰「丙」。加「乙」以五。名之曰「丁」。施「画点」於「丙」。於「丁」。於「井」。
    加「甲」以七。名之曰「丙」。加「乙」以十。名之曰「丁」。施「画点」於「丙」。於「丁」。於「井」。
是謂「画地」之術也。

吾有一術。名之曰「画島」。欲行是術。必先得二數。曰「甲」。曰「乙」。乃行是術曰。
    加「甲」以三。名之曰「丙」。加「乙」以十九。名之曰「丁」。
    施「画」於「甲」。於「乙」。於「丙」。於「丁」。於「井」。
    加「甲」以一。名之曰「丙」。加「乙」以一。名之曰「丁」。加「甲」以二。名之曰「戊」。加「乙」以十八。名之曰「己」。
    施「画」於「丙」。於「丁」。於「戊」。於「己」。於「减」。
    加「甲」以四。名之曰「丙」。加「乙」以四。名之曰「丁」。加「甲」以八。名之曰「戊」。加「乙」以十五。名之曰「己」。
    施「画」於「丙」。於「丁」。於「戊」。於「己」。於「井」。
    加「甲」以四。名之曰「丙」。加「乙」以五。名之曰「丁」。加「甲」以七。名之曰「戊」。加「乙」以十四。名之曰「己」。
    施「画」於「丙」。於「丁」。於「戊」。於「己」。於「减」。
是謂「画島」之術也。

吾有一術。名之曰「画币」。欲行是術。必先得二數。曰「甲」。曰「乙」。乃行是術曰。
    加「甲」以五。名之曰「丙」。加「乙」以四。名之曰「丁」。
    施「画」於「甲」。於「乙」。於「丙」。於「丁」。於「井」。
    加「甲」以一。名之曰「丙」。加「乙」以一。名之曰「丁」。加「甲」以四。名之曰「戊」。加「乙」以三。名之曰「己」。
    施「画」於「丙」。於「丁」。於「戊」。於「己」。於「点」。
    加「甲」以二。名之曰「丙」。加「乙」以二。名之曰「丁」。加「甲」以三。名之曰「戊」。加「乙」以二。名之曰「己」。
    施「画」於「丙」。於「丁」。於「戊」。於「己」。於「井」。
    施「画点」於「甲」。於「乙」。於「空」。
    加「甲」以五。名之曰「丙」。施「画点」於「丙」。於「乙」。於「空」。
    加「乙」以四。名之曰「丙」。施「画点」於「甲」。於「丙」。於「空」。
    加「甲」以五。名之曰「丙」。加「乙」以四。名之曰「丁」。施「画点」於「丙」。於「丁」。於「空」。
是謂「画币」之術也。

吾有一術。名之曰「画人」。欲行是術。必先得二數。曰「甲」。曰「乙」。乃行是術曰。
    加「乙」以五。名之曰「丙」。加「乙」以十二。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「星」。
    加「甲」以一。昔之「甲」者。今其是矣。
    加「乙」以四。名之曰「丙」。加「乙」以十五。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「星」。
    加「甲」以一。昔之「甲」者。今其是矣。
    加「乙」以四。名之曰「丙」。加「乙」以七。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「井」。
    加「乙」以八。名之曰「丙」。加「乙」以十三。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「点」。
    加「乙」以十二。名之曰「丙」。施「画点」於「甲」。於「丙」。於「井」。
    加「甲」以一。昔之「甲」者。今其是矣。
    加「乙」以二。名之曰「丙」。加「乙」以十四。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「井」。
    加「乙」以三。名之曰「丙」。加「乙」以四。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「点」。
    加「乙」以八。名之曰「丙」。加「乙」以十二。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「点」。
    加「乙」以十五。名之曰「丙」。加「乙」以十八。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「点」。
    加「甲」以一。昔之「甲」者。今其是矣。
    加「乙」以二。名之曰「丙」。加「乙」以十七。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「井」。
    加「乙」以五。名之曰「丙」。加「乙」以十一。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「点」。
    加「甲」以一。昔之「甲」者。今其是矣。
    加「乙」以五。名之曰「丙」。加「乙」以十五。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「点」。
    加「甲」以一。昔之「甲」者。今其是矣。
    加「乙」以四。名之曰「丙」。加「乙」以十三。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「井」。
    加「乙」以六。名之曰「丙」。施「画点」於「甲」。於「丙」。於「星」。
    加「甲」以一。昔之「甲」者。今其是矣。
    加「乙」以一。名之曰「丙」。加「乙」以十七。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「井」。
    加「乙」以五。名之曰「丙」。加「乙」以十一。名之曰「丁」。施「画」於「甲」。於「丙」。於「甲」。於「丁」。於「星」。
    加「甲」以一。昔之「甲」者。今其是矣。
    加「甲」以二。名之曰「丙」。加「乙」以二十。名之曰「丁」。施「画」於「甲」。於「乙」。於「丙」。於「丁」。於「点」。
    加「乙」以四。名之曰「丙」。加「甲」以二。名之曰「丁」。加「乙」以十六。名之曰「戊」。施「画」於「甲」。於「丙」。於「丁」。於「戊」。於「星」。
    加「乙」以三。名之曰「丙」。施「画点」於「甲」。於「丙」。於「井」。
    加「乙」以十四。名之曰「丙」。加「甲」以一。名之曰「丁」。加「乙」以十六。名之曰「戊」。施「画」於「甲」。於「丙」。於「丁」。於「戊」。於「井」。
    加「甲」以一。名之曰「丙」。加「乙」以十六。名之曰「丁」。施「画点」於「丙」。於「丁」。於「点」。
    加「甲」以二。名之曰「丙」。加「乙」以八。名之曰「丁」。加「甲」以二。名之曰「戊」。加「乙」以十一。名之曰「己」。
    施「画」於「丙」。於「丁」。於「戊」。於「己」。於「空」。
    加「乙」以七。名之曰「丙」。施「画点」於「甲」。於「丙」。於「点」。
    加「乙」以十二。名之曰「丙」。施「画点」於「甲」。於「丙」。於「点」。
    加「甲」以三。名之曰「丙」。加「甲」以四。名之曰「丁」。加「乙」以十九。名之曰「戊」。
    施「画」於「丙」。於「乙」。於「丁」。於「戊」。於「井」。
    加「甲」以三。名之曰「丙」。加「乙」以六。名之曰「丁」。加「甲」以四。名之曰「戊」。加「乙」以十三。名之曰「己」。
    施「画」於「丙」。於「丁」。於「戊」。於「己」。於「空」。
    加「甲」以三。名之曰「丙」。加「甲」以三。名之曰「丁」。加「乙」以一。名之曰「戊」。
    施「画」於「丙」。於「乙」。於「丁」。於「戊」。於「空」。
    加「甲」以三。名之曰「丙」。加「乙」以十八。名之曰「丁」。加「甲」以三。名之曰「戊」。加「乙」以十九。名之曰「己」。
    施「画」於「丙」。於「丁」。於「戊」。於「己」。於「空」。
是謂「画人」之術也。

施「画人」於一。於十二。
施「画地」於十四。於一。施「画地」於十四。於十五。施「画地」於十四。於二十九。
施「画島」於十四。於四十三。
施「画币」於五。於四十三。施「画币」於五。於五十八。

吾有一數。曰一。名之曰「甲」。
為是「高」遍。
    吾有一言。曰「「」」。名之曰「果」。
    吾有一數。曰一。名之曰「乙」。
    為是「宽」遍。
        乘「甲」以「宽」。加其以「乙」。加其以一。名之曰「丙」。
        夫「图」之「丙」。名之曰「丁」。
        若「丁」等於變者。昔之「丁」者。今「空」是矣也。
        加「果」以「丁」。昔之「果」者。今其是矣。
        加「乙」以一。昔之「乙」者。今其是矣。
    云云。
    吾有一言。曰「果」。書之。
    加「甲」以一。昔之「甲」者。今其是矣。
云云。

论坛对于文言的高亮…实在有点…
项目地址:


在线IDE:玩的人很多,可能会卡
https://wy-lang.org/ide

项目序言

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

附赠个转换器:
https://zxch3n.github.io/wenyanizer/

想写个乘法表,放弃了 :sweat:

乘法口诀表

吾有一術名之曰「乘算口訣」。是術曰。
    有數一名之曰「甲」。
    恆為是。若「甲」不小於十者乃止也。
        有數一名之曰「乙」。
        加「甲」以「乙」名之曰「丙」。
        恆為是。若「乙」不小於「丙」者乃止也。
                乘「甲」以「乙」名之曰「果」。
                若「果」不小於十者吾有三言。曰「乙」曰「甲」曰「果」書之。
                若非吾有四言。曰「乙」曰「甲」曰「「得」」曰「果」書之也。
                加「乙」以一。昔之「乙」者今其是矣。
        云云。
        加「甲」以一。昔之「甲」者今其是矣。
    云云。
是謂「乘算口訣」之術也。
施「乘算口訣」。

输出(可滚动):

一 一 得 一
一 二 得 二
二 二 得 四
一 三 得 三
二 三 得 六
三 三 得 九
一 四 得 四
二 四 得 八
三 四 一十二
四 四 一十六
一 五 得 五
二 五 一十
三 五 一十五
四 五 二十
五 五 二十五
一 六 得 六
二 六 一十二
三 六 一十八
四 六 二十四
五 六 三十
六 六 三十六
一 七 得 七
二 七 一十四
三 七 二十一
四 七 二十八
五 七 三十五
六 七 四十二
七 七 四十九
一 八 得 八
二 八 一十六
三 八 二十四
四 八 三十二
五 八 四十
六 八 四十八
七 八 五十六
八 八 六十四
一 九 得 九
二 九 一十八
三 九 二十七
四 九 三十六
五 九 四十五
六 九 五十四
七 九 六十三
八 九 七十二
九 九 八十一
2赞

刘辉割圆求圆周率

注曰「「割圓術始載於劉徽所著九章算術注」」
吾嘗觀「「算經」」之書。方悟「冪」「平方根」之義。
吾有一數。曰一。名之曰「半徑」。
乘「半徑」以「半徑」。名之曰「半徑平方」。
吾有一術。名之曰「求小弦」。欲行是術。必先得二數。曰「裏觚之面」。曰「輪數」。乃行是術曰。
    若「輪數」小於一者。乃得「裏觚之面」也。
    除「裏觚之面」以二。名之曰「半面」。
    乘「半面」以「半面」。名之曰「半面平方」。
    減「半徑平方」以「半面平方」。取一以施「平方根」。名之曰「股」。
    減「半徑」以「股」。名之曰「小句」。
    乘「小句」以「小句」。加其以「半面平方」。取一以施「平方根」。名之曰「小弦」。
    夫「小弦」。減「輪數」以一。取二以施「求小弦」。乃得矣。
是謂「求小弦」之術也。
注曰「「輪數始於一」」
吾有一術。名之曰「割圓術求圓率」。欲行是術。必先得一數曰「輪數」。乃行是術曰。
    減「輪數」以一。昔之「輪數」者。今其是矣。
    施「冪」於二於「輪數」。乘其以六。名之曰「觚數」。
    施「求小弦」於「半徑」於「輪數」。名之曰「小弦」。
    乘「小弦」以「觚數」。名之曰「觚周」。
    除「觚周」以二。乘其以「半徑」。名之曰「觚冪」。
    除「觚冪」以「半徑平方」。名之曰「圓率」。
    夫「「割圓」」。夫「觚數」。夫「「觚。所得圓率者。」」。書之。
    夫「圓率」。夫「「也。」」。書之。
    乃得「圓率」。
是謂「割圓術求圓率」之術也。
施「割圓術求圓率」於十。

输出:

割圓 三千零七十二 觚。所得圓率者。
三又一分四釐一毫五絲九忽二微一纖零五塵九埃九渺九漠 也。

竟然是js,看到这个我第一反应是写一个翻译程序把代码变成文言文 :joy:

早就写了…

想起了仙王的日常生活动漫里的一个片段。。。

我觉得aardio才能算有趣,国人写的

倒是有官网,没GitHub啊

什么场景 :joy:

把二进制叫两仪制 10 对应 乾坤 :joy:

这个看着有点给力,赞