青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆-341  評論-2670  文章-0  trackbacks-0
    今天不小心看到了http://www.antlr.org/works/index.html,我一直認為ANTLR是LR(k)分析器,后來我錯了,原來只是LL(k)。我以前寫的一個Vczh Syngram是LR(k)的畸形,今天看了居然連LL(k)都能有GUI,我不做一個豈不是對不起自己?

    Vczh Syngram是一個在C++下面用的編譯器的語法分析框架,只需要在C++代碼里面寫上文法,到時候initialize出一個接口來就可以幫你搞定語法分析了。當然分析完要生成語法樹還是什么的是由你決定的。不過雖然現(xiàn)在寫編譯器的語法分析只要syngram+文法,但是調試起來還是比較囧的。ANTLRWorks的想法真是好啊,GUI封裝完了之后我就做一個Vczh Syngram的圖形界面來當demo吧,一舉兩得。到時候這個demo產生使用Vczh Syngram的一部分代碼,爽啊。Vczh Free Script 2.0的代碼文件里就有一個文件是調用Vczh Syngram的文法代碼。

    今天某空明跟我說我的Vczh Syngram沒文檔害他只能用yacc寫一個軟件渲染器用的shader compiler。有了GUI之后,連文檔都免了吧。嘿嘿。等最近GUI封裝完之后,就把這個程序寫了,也能用通俗易懂的方法來告訴別人我這套框架是怎么用的。

    話說Vczh Syngram在開發(fā)的時候為了檢查出文法的歧義花了一個星期的時間未果,因為LALR實在是不能用,用了在分析之后就很難還原出到底分析的這條路是調用了什么文法,文法綁定的工作也就非常不好做了。于是我換了一種辦法,我輸出所有歧義的可能就行了。后來發(fā)現(xiàn)輸出歧義比檢查文法好多了,因為有些時候我們需要歧義才能解決問題。我自己有過一個叫Gotalk的殘廢腳本,后來沒公開出來,也沒有完成所有代碼。這個腳本是這樣子的:

phrase max of (number1 is integer) and (number2 is integer) returns integer
  if number1 is larger than number2 then
    return number1
  else
    return number2
  end if
end phrase

phrase max of(number1 is integer),(number2 is integer) and (number3 is integer)returns integer
  return max of max of number1 and number2 and number3
end phrase

//下面這些是外接函數定義,由虛擬機處理
external phrase print (text as string) links "print"
external pharse input returns string links "input"

//下面是主函數,輸入3個數字輸出最大那個
phrase main
  define n1 , n2 , n3 as integer
  let n1 be integer of input
  let n2 be integer of input
  let n3 be integer of input
  print string of max of n1,n2 and n3
end phrase

    在處理這個語法的時候,我的程序第一次掃描文件的時候動態(tài)組織文法給syngram,第二次用syngram給出結果。這個時候我需要歧義,因為我可以在歧義里面排除所有不能通過類型檢查的結果,最終獲得用戶所希望的表達方法。后來基本上是弄出來了,但是經過調查發(fā)現(xiàn)其實不會有什么人用的,實際上是因為英語跟程序相差太遠了,很多概念我重組了別人不一定能夠接受。不過這是DSL語言所向往的一種辦法。本來這門語言里面還支持從句(也就是平常見到的lambda expression),還有類啊繼承什么的。函數根據參數在不同的位置還自動獲得優(yōu)先級,能寫出類似sin of a,或者干脆定義運算符| a |計算絕對值也行,甚至還能寫a is a prime number(譬如判斷a是不是質數if a is a prime number then...)。懶得寫大代碼展示了。什么時候無聊了再重新寫一個好一點的。到時候跟Vczh Free Script共享后端虛擬機,就可以實現(xiàn)互相調用并共享類庫了,爽啊。

    有了Syngram,做編譯器還是很方便的,可以將精力花在后端上。前端不應該由人來完成。
posted on 2008-08-14 05:21 陳梓瀚(vczh) 閱讀(1647) 評論(2)  編輯 收藏 引用 所屬分類: C++

評論:
# re: Vczh GUI Framework取材決定 2008-08-14 06:52 | 沈臻豪(foxtail)
囧~~沒完沒了了。  回復  更多評論
  
# re: Vczh GUI Framework取材決定 2008-08-14 08:58 | 空明流轉
行了,等你的GUI出來我的SASL估計也完工了。
那個時候再用你的Syngram搞一個吧。
一開始盼盼以為我要用你的syngram,然后我跟你說這事的時候你又沒啥反應。  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲成人自拍视频| 麻豆av一区二区三区久久| 亚洲看片网站| 欧美色播在线播放| 亚洲香蕉在线观看| 亚洲性线免费观看视频成熟| 欧美日韩国产成人高清视频| 一区二区不卡在线视频 午夜欧美不卡在 | 国内精品久久久久久影视8 | 这里是久久伊人| 国产精品a级| 亚洲一区二区三区精品在线观看 | 在线性视频日韩欧美| 久久亚洲二区| aa级大片欧美| 欧美国产一区在线| 欧美一区在线直播| 亚洲欧洲在线看| 国产欧美一区二区精品婷婷| 老鸭窝亚洲一区二区三区| av成人手机在线| 亚洲缚视频在线观看| 欧美一区二区在线观看| 99伊人成综合| 亚洲国产美国国产综合一区二区| 国产精品久久77777| 欧美国产精品中文字幕| 久久漫画官网| 久久婷婷麻豆| 久久亚洲精品一区二区| 久久狠狠亚洲综合| 欧美一区二区在线播放| 亚洲小说欧美另类婷婷| 亚洲日本一区二区三区| 亚洲电影成人| 久久视频在线免费观看| 亚洲欧美影院| 午夜一区二区三区在线观看| 日韩亚洲欧美成人| 亚洲精品午夜精品| 亚洲精品色婷婷福利天堂| 影院欧美亚洲| 亚洲精品视频一区二区三区| 国产一区二区中文| 国产资源精品在线观看| 国产一区二区三区在线观看视频| 欧美日韩一区不卡| 欧美日韩喷水| 国产精品日韩在线观看| 国产精品香蕉在线观看| 悠悠资源网久久精品| 亚洲国产美女| 午夜在线精品| 嫩草成人www欧美| 美国成人直播| 亚洲美女黄网| 新67194成人永久网站| 免费观看成人网| 国产精品社区| 亚洲欧洲另类国产综合| 一区二区三区四区五区在线 | 欧美激情视频一区二区三区不卡| 欧美日韩成人综合在线一区二区| 欧美视频一区二区三区| 亚洲国产欧美在线人成| 亚洲视频在线二区| 欧美护士18xxxxhd| 欧美永久精品| 国精品一区二区三区| 在线一区视频| 99视频精品全国免费| 久久一综合视频| 亚洲第一毛片| 免费在线亚洲欧美| 久久久久久精| 精品51国产黑色丝袜高跟鞋| 久久www成人_看片免费不卡| 亚洲视频免费在线| 国产精品青草综合久久久久99| 亚洲午夜成aⅴ人片| 99国产成+人+综合+亚洲欧美| 亚洲一区精品视频| 亚洲午夜精品网| 久久香蕉国产线看观看av| 狠狠色噜噜狠狠色综合久| 欧美一区二区性| 欧美在线三区| 亚洲国产成人精品女人久久久 | 中文日韩欧美| 国精品一区二区| 久久亚洲精品一区| 欧美精品www在线观看| 中文在线一区| 久久精品水蜜桃av综合天堂| 亚洲二区在线| 亚洲视频中文| 亚洲国产另类久久久精品极度| 亚洲精品欧美一区二区三区| 国产精品海角社区在线观看| 久久综合狠狠| 国产精品theporn| 欧美福利视频一区| 国产精品网站在线播放| 亚洲国产成人porn| 国产亚洲欧美在线| 亚洲日本电影| …久久精品99久久香蕉国产| 亚洲精品九九| 亚洲激情小视频| 久久精品国产v日韩v亚洲| 亚洲视频视频在线| 欧美大片免费| 欧美电影免费网站| 国产亚洲视频在线观看| 亚洲免费网站| 午夜国产欧美理论在线播放| 欧美伦理影院| 亚洲三级电影在线观看| 亚洲国产精品毛片| 欧美xx69| 99国产精品国产精品毛片| 亚洲日本中文字幕| 欧美激情aaaa| 99精品国产热久久91蜜凸| 亚洲字幕一区二区| 国产精品日日摸夜夜添夜夜av| 亚洲午夜电影网| 欧美一站二站| 在线观看国产一区二区| 久久久久成人网| 亚洲区在线播放| 在线一区日本视频| 国产色产综合产在线视频| 久久九九99视频| 亚洲免费观看| 久久精品欧美日韩精品| 在线播放国产一区中文字幕剧情欧美| 久久大逼视频| 一区二区三区视频在线| 久久国产精彩视频| 亚洲激情视频| 国产欧美一区二区精品性| 久久亚裔精品欧美| 亚洲视频精选在线| 欧美福利小视频| 欧美高清视频在线| 欧美诱惑福利视频| 国产精品99久久久久久久久久久久 | 99热精品在线观看| 国产午夜精品在线| 国产精品高清在线观看| 免播放器亚洲| 久久米奇亚洲| 久久成人免费网| 午夜精品www| 亚洲欧美日韩专区| 亚洲综合精品| 亚洲一二三级电影| 亚洲图片欧美日产| 亚洲全黄一级网站| 午夜精品视频| 激情亚洲网站| 国产日韩精品久久久| 国产精品亚洲а∨天堂免在线| 欧美好骚综合网| 欧美国内亚洲| 欧美黄在线观看| 欧美国产一区视频在线观看| 久久久精彩视频| 欧美aaa级| 欧美黄色日本| 国产精品高潮粉嫩av| 国产精品每日更新| 国产日韩欧美另类| 国内精品久久久久影院色| 在线观看日韩欧美| 99亚洲精品| 欧美在线不卡视频| 欧美刺激性大交免费视频| 亚洲精品自在在线观看| 亚洲午夜在线视频| 久久久久九九视频| 欧美日韩喷水| 曰韩精品一区二区| 亚洲欧美在线aaa| 亚洲国产午夜| 久久er精品视频| 欧美性事免费在线观看| …久久精品99久久香蕉国产| 这里只有精品视频| 亚洲国产一区二区精品专区| 亚洲综合欧美| 国产精品爱啪在线线免费观看| 亚洲国产成人在线视频| 午夜精品国产精品大乳美女| 亚洲精品国产精品国自产观看 | 一本一本久久| 亚洲激情成人在线| 免费观看在线综合| 加勒比av一区二区|