<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          哈哈哈哈,16 歲高中生開發(fā)「粵語編程」項目,在 GitHub 火了!

          共 1732字,需瀏覽 4分鐘

           ·

          2021-06-24 00:50

          來自機(jī)器之心

          粵語編程語言 ——The Cantonese Programming Language。看來大家都是 C 語言啊。

          最近十分搞笑的飲茶梗,刷新了大家對粵語的認(rèn)知。


          其實粵語一直都是一個隱含著幽默感的方言,想想「旺角卡門」中的烏蠅哥,是不是腦海中已經(jīng)回蕩起了學(xué)友哥的四字語音?而且毋庸置疑,粵語還是需要保護(hù)的文化遺產(chǎn)。

          那么,今天我們就給大家介紹一個有趣的粵語編程語言 GitHub 項目,其開發(fā)者 Stepfen Shawn 似乎(自稱)是來自廣州的十六歲高中生。目前,該項目的 star 量已經(jīng)達(dá)到了 600+。雖然工作中不會用粵語寫代碼,但是空閑時玩一下粵語編程,難道不是件樂事嗎?


          項目地址:https://github.com/StepfenShawn/Cantonese

          粵語編程啟蒙

          下面列舉了粵語版「Hello World」以及一些基本的功能(循環(huán)、函數(shù)等),還涵蓋了面向?qū)ο缶幊毯投褩J褂玫氖纠?。?dāng)然,還有各種有趣的編程語法細(xì)節(jié),比如用「搞掂」來結(jié)束函數(shù),用「使下」來調(diào)用庫。


          項目作者在《5 分鐘學(xué)會粵語編程》教程中解釋說,這里的「畀 (bei)」在粵語中是「給」的意思,「睇」是「看」的意思,所以整條語句的意思是「讓我看看」的意思,而后面的「點樣先?」則表示委婉的語氣,意為「怎么樣?」。對于這種有意思的互動,作者解釋說,「需要用委婉語氣來給計算機(jī)留下第一個好的印象,否則計算機(jī)可能會離家出走呢,對吧?」


          而賦值語句「講嘢 |A| 系 1」的「講嘢」是「說話」的意思,「係」就是「是」的意思。作者表示,編程時寫「系」也是能運(yùn)行的。同樣的,「唔係」就是「不是」的意思,「定係」就是「還是」的意思。


          「落操場玩跑步...... 玩到 | 結(jié)束 | 為止」這個語句相當(dāng)于一個 loop,「結(jié)束」就是 loop 的條件。

          而類似 break 的用法有三種:「收工」、「辛苦曬啦」、「同我躝」。前兩個很好理解,而第三個中的「躝」是「滾」的意思,所以使用哪個完全取決于你的心情。


          「嘅」的意思是「的」,有沒有感覺瞬間能讀懂了。


          「要做咩」直觀地告訴計算機(jī)該函數(shù)接下來要做什么,「搞掂」是「搞定」的意思,起到 end 的作用。


          「掟個...... 來睇下」的作用是拋出一個異常,其中「掟」有仍或丟的意思。而「諗」的意思是「想」,讓計算機(jī)作判斷。


          「執(zhí)嘢...... 揾到...... 執(zhí)手尾」對應(yīng)著 try、except、finally?!笀?zhí)嘢」是收拾房間的意思,「揾到」是指收拾中找到破爛了,至于「執(zhí)手尾」,就是選擇丟不丟這個破爛了。


          講真,這個「使下」,比 import 更形象。


          沒想到吧,居然還能進(jìn)行面向?qū)ο缶幊??!竵凇沟囊馑际恰杆?,代指一個對象;「佢嘅」意思是「它的」,能夠用來構(gòu)造屬性;「佢識得」意思是「它會」,用來構(gòu)造類的方法;「老豆」就是「爹」的意思,用于描述繼承關(guān)系。最后用「明白未啊」做結(jié)束語問計算機(jī)你明白了嗎,會讓計算機(jī)倍感親切,接受介紹給它的對象。


          這里的「Deo 哥」很明顯是個棧,「頂你」就是放入棧,「丟你」就是從棧取出。

          粵語編程進(jìn)階

          下面列舉了一些粵語編程的進(jìn)階玩法,比如二分查找、線性查找、冒泡排序、插入排序、KNN 等算法的實現(xiàn)。能看到這里,說明你很感興趣啊,那就繼續(xù)學(xué)吧。


          對你沒有看錯,由于此語言由 Python 開發(fā),還可以非常方便地編寫機(jī)器學(xué)習(xí)算法。


          此處為作者的靈魂畫作(號稱是海龜)。


          上圖是使用此語言開發(fā)的迷宮小游戲界面。

          代碼鏈接:https://github.com/StepfenShawn/Cantonese/blob/main/examples/games/game.cantonese

          下面是作者實現(xiàn)的網(wǎng)頁和 App 示例:


          加入語言的方式

          粵語編程語言運(yùn)行在 Python 虛擬機(jī)上,支持 Python 3,使用方式如下:


          還可以轉(zhuǎn)化為 Python 運(yùn)行:


          以及生成 HTML:

          瀏覽 55
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  天天看A片 | 人人做人人爱免费的视频 | 大雞巴疯狂浓精合集 | 国产无遮挡又黄又爽免费软件 | 太湾黄色一级网 |