日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

活久见!大四学生发明文言文编程语言,脑洞新奇

發(fā)布時間:2023/12/20 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 活久见!大四学生发明文言文编程语言,脑洞新奇 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
點擊上方“Python大本營”,選擇“置頂公眾號”python大本營? IT人的職業(yè)提升平臺

整理 | 夕顏

出品 | AI科技大本營(ID:rgznai100)

【導讀】近日,GitHub 上一個叫做文言文(wenyan)的編程語言項目火了,就在本文成文期間,GitHub 上的 Star 數(shù)已經(jīng)從 2200 漲到 2800,并還有繼續(xù)上漲的趨勢。只需要在在線編輯器上,或下載一個編譯器,就可以用文言文進行編程。讓人驚訝的是,這個涉及思路清奇的項目竟然出自卡內(nèi)基梅隆大學的一名大四學生之手,不禁讓人感嘆后生可畏。

文言文(wenyan)是一種深奧的編程語言,遵循中國古典文學的語法和文風。據(jù)介紹,這種編程語言文字僅包含繁體中文字符和“''引號,因此古代中國人絕對看得懂。是不是覺得很新奇?那不妨動動你的小手嘗試一下吧,可以在在線編輯器上試用,也可以下載編譯器或查看源代碼。

在線編輯器:http://wenyan-lang.lingdong.works/ide.html

下載編譯器:https://github.com/LingDong-/wenyan-lang#installation

開源代碼:https://github.com/LingDong-/wenyan-lang

這個項目受到了大家很多好評,有人說項目的設計思路奇特,有人表示在學編程的同時還順帶學習了文言文,一箭雙雕。

那么,wenyan 究竟是怎么玩的?我們來跟著 GitHub 學習一下。

語法

正如如名,文言文(wenyan)遵循古文言文的語法:?

??

???編輯

wenyan 目前可編譯為 JavaScript 或 Python,將來可能會支持更多語言(比如 C)。上面的“ Hello World”示例(或任何編輯)將轉(zhuǎn)換為:

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

輸出結(jié)果:

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

標點和換行符是完全可選的(就像古文言文一樣),因此上面的代碼等效于:

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

上面的代碼是可編輯的,你可以自定義問候語并點擊??!

另一個稍微復雜一點的示例,使用埃及篩查找素數(shù):

注:埃拉托斯特尼篩法,簡稱埃氏篩或愛氏篩,是一種由希臘數(shù)學家埃拉托斯特尼所提出的一種簡單檢定素數(shù)的算法。要得到自然數(shù)n以內(nèi)的全部素數(shù),必須把不大于根號n的所有素數(shù)的倍數(shù)剔除,剩下的就是素數(shù)。來源 | 百度百科? ? ? ?

你可以在在線 IDE 上找到更多示例,例如通用圖靈機、曼德勃羅分形圖、漢諾塔等。

特征

  • NLP遵循古文言文語法

  • 編譯為JavaScript或Python

  • 圖靈完備(https://github.com/LingDong-/wenyan-lang/blob/master/examples/turing.wy 在可計算性理論里,如果一系列操作數(shù)據(jù)的規(guī)則(如指令集、編程語言、細胞自動機)可以用來模擬單帶圖靈機,那么它是圖靈完備的。)

  • 在線IDE http://wenyan-lang.lingdong.works/ide.html

  • 入門示例 https://github.com/LingDong-/wenyan-lang/tree/master/examples

安裝

編譯器

克隆存儲庫(或下載 ./build/wenyan.js 并設置其可執(zhí)行位 chmod +x wenyan.js)。然后運行 ./build/wenyan.js,把你的 wenyan 源代碼編譯為目標語言。調(diào)用不帶參數(shù)的編譯器將顯示幫助消息,如下所示:

Usage:?wenyan?[options]?[input?files]Options: --eval????-e?<string>??:?Give?a?string?instead?of?a?file?(default:?`') --exec????-x?<boolean>?:?Execute?ouput?(default:?`false') --inspect?-i?<boolean>?:?Interactive?REPL?(default:?`false') --lang????-l?<string>??:?Language:?js/py?(default:?`js') --log????????<string>??:?Log?file?(default:?`/dev/null') --output??-o?<string>??:?Output?file?(default:?`/dev/stdout') --roman???-r?<boolean>?:?Romanize?identifiers?(default:?`true')

首先嘗試構(gòu)建包含的示例,例如:

./build/wenyan.js?examples/helloworld.wy?-o?helloworld.js

構(gòu)建平臺特定的二進制文件

  • 克隆倉庫

  • npm install

  • npm run make_cmdline

macOS、Windows和Linux二進制文件將位于./build文件夾中。

語法備忘單

該項目團隊正在加緊構(gòu)建與上下文無關的語法描述。同時,你還可以查看以下備忘單或src/parser.js 了解該項目語法。

變量? ? ? ??管理? ? ? ?數(shù)學

? ? ? ?? ??

容器

數(shù)組是1索引的。? ? ? ??

特征? ? ? ?渲染器

src / render.js 可以將 wenyan 程序渲染為有歷史感的印刷書籍頁面圖像。它還可以將生成的SVG 文件解析回原始程序。下面是用 wenyan 編寫的通用圖靈機的渲染圖:? ? ? ??? ? ? ?出自CMU大四學生之手

值得注意的是,這個思路清奇的設計竟然出自一名卡內(nèi)基梅隆大學的大四學生 Ling Dong Huang。

?在作者簡介中,Ling Dong Huang 表示自己將于 2020 年獲得計算機科學學位,此前,他曾在迪士尼研究院、 Antimodular 研究院和《紐約時報》實習,自己也做了項目網(wǎng)站 https://lingdong.works/。目前已經(jīng)有將近 30 個項目。項目主題豐富多彩,比如用 emoji 做成的小游戲,使用用戶提交的涂鴉做成的計算機動畫,以及和本文一樣對中國下手,把中國表意文字和部首做成可視化動畫,等等,并給出了項目的源代碼。? ?

??? ? ? ? ? ? ?? ??

此外,他的項目還包括:

  • 隱士——互動式程序生成景觀(CMU 2015 年秋季 CS 15-112 學期項目競賽優(yōu)勝者)

    https://github.com/LingDong-/Hermit

  • 普通人臉模擬器——本地2人人臉模擬。(觀看次數(shù) 180 + K,在 itch.io 上下載 60 + K)

    https://lingdonh.itch.io/normal-human-face-simulator

  • {山,水} **——程序無限生成的中國山水畫。(2018 年 5 月在卡耐基梅隆大學展出)

    https://github.com/LingDong-/shan-shui-inf

  • 錯山記(Legend of Wrong Mountain)——一部完全由機器使用程序生成和機器學習技術(shù)編寫、創(chuàng)作和表演的中國戲曲。(論文已被 ?2 0 1 8 NIPS workshop 接收)

    https://www.youtube.com/watch?v = QPdb28h4qjc我的在線投資組合中的更多項目(https://lingdong.works)

不得不說,作者的腦洞不小,不少項目的創(chuàng)意很是新奇。

這個項目你覺得怎么樣?如果你發(fā)現(xiàn)了更多好玩有趣的項目,歡迎留言和我們分享。

—— 推 薦 閱 讀 ——

你點的每個“在看”,我都認真當成了喜歡

總結(jié)

以上是生活随笔為你收集整理的活久见!大四学生发明文言文编程语言,脑洞新奇的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。