• <kbd id="qyk40"></kbd>
  • <strike id="qyk40"></strike><samp id="qyk40"><pre id="qyk40"></pre></samp>

    很多人對他們現在每天使用的編程語言感到困惑和不解,他們都有各自的需求,無論你是一名職業的IT人員還是普通的開發愛好者,你可能想要創造一門新的編程語言。下面就來告訴你如何創造一門編程語言。

     

    Step 1 對專業術語十分熟悉

           寫編譯器的人通常會使用一些你不是那么熟悉的術語,所以你一定要在開發前先了解編譯器,確保你知道編譯的所有事情。
     

    Step 2 確定這門語言的應用領域

           你要知道你的這門語言是用來解決某個特定領域的問題,還是通用目的的語言?
     

    Step 3 思考這門語言的語義和概念

           (1)允許直接的指針訪問嗎?
           (2)這門語言提供哪些數據類型?
           (3)這是一門靜態語言還是動態的語言?

           (4)使用什么內存模型?是有自動的垃圾回收機制還是需要手工管理內存?

           (5)如何處理并發性?你準備使用單進程/鎖模型,還是復雜一些的,像Linda或actor模型?
           (6)語言中提供一些內嵌的簡單函數還是所有的內容都來自于類/函數庫?
           (7)這門語言的范式是什么?是函數式的,面向對象的,面向方面的,模板式的,還是一種原型,或就是徹頭徹尾全新的?

           (8)這門語言和現存的庫或函數的接口是如何的?如果你是在創建某一領域特定的語言,這點就尤其重要。
           (9)最后,這里面的一些問題如果想有很好的答案,需要先做好第二步。



    Step 4 思考人們想用這門語言做的事情
           比如說,一些人想利用它指揮機器人,一些人想用它開發移動端的桌面程序或是用它開發Web應用。


    Step 5 利用上面的例子測試語法
           注意應該讓你的語言屬于上下文無關范疇或是它的子類別,這在以后對你和你的語法分析程序都是件好事。


    Step 6 寫出正式的語法規則

    QQ圖片20141205180447.png?

    Step 7 確定這是一門解釋型語言還是編譯型語言
           它意味著如果這是一門解釋型語言,你的用戶通常會在編輯器里寫程序,然后直接在解釋器中運行。但是對于編譯型語言,你的用戶會寫代碼,編譯,然后將可執行程序存到別的地方,單獨運行。


    Step 8 寫好語法分析器或借助工具幫助你
           想好如果用戶的程序出現語法錯誤,你的編譯器或解釋器將給出什么樣的警告?


    Step 9 使用語法分析器信息寫目標代碼


    Step 10 寫好執行程序或代碼生成器


    Step 11 寫出足夠多的測試程序來檢測這門語言
           你希望創造出一門正規的語言,它的編譯器可以明確的接受定義范圍內的所有的內容,而拒絕這之外的一切內容。


    Step 12 考慮用戶如何調試自己的程序


    Step 13 如果你的語言使用標準類庫,你要寫好它
           特別是,如果你寫一個編譯器,你需要這么一段代碼,讓操作系統執行它從而開始運行用戶程序。


    Step 14 發布這門語言的同時加上它的說明書和一些附屬例子
           不要忘記注明你是如何整合這些庫和語言的,如何使用運行時間的特性和標準類庫。

     

    穩定

    產品高可用性高并發

    貼心

    項目群及時溝通

    專業

    產品經理1v1支持

    快速

    MVP模式小步快跑

    承諾

    我們選擇聲譽

    堅持

    10年專注高端品質開發
    • 返回頂部
    国产精品99精品久久免费| 黑人无码精品又粗又大又长| 亚洲AV无码成人精品区狼人影院| 99久久人妻精品免费二区| 久久九九亚洲精品| 国内精品久久久久国产盗摄| 国产精品国产三级国产a| 日本精品一区二区三区在线视频| 亚洲精品色午夜无码专区日韩| 国产精品久久久久久久久久久搜索 | 日韩精品乱码AV一区二区| 国产成人一区二区动漫精品| 在线观看91精品国产不卡免费| 精品国产电影久久九九| 含羞草国产亚洲精品岁国产精品| 久久蜜桃精品一区二区三区| 无码人妻精品一区二区三区久久久 | 国产精品欧美成人| 影院成人区精品一区二区婷婷丽春院影视| 亚洲中文字幕久久精品无码VA| 中文人妻熟妇乱又伦精品| 亚洲精品无码成人片久久不卡| 国产美女在线精品观看| 热久久综合这里只有精品电影| 久久香蕉超碰97国产精品| 久久精品中文字幕第一页| 国产精品va无码一区二区| 亚洲av永久无码精品网站 | 国产精品手机在线| 久久机热这里只有精品无需| 国产香蕉一区二区精品视频| 国产精品香蕉一区二区三区 | 日韩精品无码一本二本三本| 日韩高清在线观看永久| 日韩成人一区ftp在线播放| 精品人妻一区二区三区四区| 500av导航大全精品| 久热精品人妻视频| 国产亚洲精品一品区99热| 久久精品一品道久久精品9| 色欲久久久天天天综合网精品|