• <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>
            隨筆-341  評(píng)論-2670  文章-0  trackbacks-0

            點(diǎn)擊這里下載。

            作者保留對(duì)源代碼的一切權(quán)利

            文件是一個(gè)rar壓縮包,結(jié)構(gòu)如下:
            【產(chǎn)品】
                【Demo】?jī)蓚€(gè)Demo的編譯結(jié)果。這個(gè)文件夾里面的腳本代碼僅供測(cè)試用。
                【庫(kù)】編譯結(jié)果以及Vczh Free Script 2.0提供的插件封裝,使用Vczh Free Script腳本語(yǔ)言編寫(xiě)。
                【文檔>】使用說(shuō)明書(shū)。
            【源代碼】源代碼僅能使用Visual C++ 2005或以上編譯器編譯。
                【FreeScript】使用FsRuntime.dll寫(xiě)的C++Demo,控制臺(tái)虛擬機(jī)。
                【FreeScript_CSharp】使用FsRuntime_clr.dll寫(xiě)的C#Demo,控制臺(tái)虛擬機(jī)。
                【FsRuntime】Vczh Free Script 2.0 DLL接口。
                【FsRuntime_CLR】使用FsRuntime.dll寫(xiě)的.NET接口。
                【Library】
                    【Data】數(shù)據(jù)輸出以及必要的操作系統(tǒng)接口封裝。
                        【Data】為了不使用STL而做出來(lái)的字符串、對(duì)象池以及容器模板庫(kù)。
                        【Grammar】具有不同目的的兩套正則表達(dá)式引擎以及上下文無(wú)關(guān)文法分析器。
                    【Platform】控制臺(tái)封裝。
                    【Script】
                        【Free】
                            【Common】指令集。
                            【Compiler】編譯器。
                            【Machine】虛擬機(jī)。

            posted on 2008-07-01 05:35 陳梓瀚(vczh) 閱讀(11168) 評(píng)論(23)  編輯 收藏 引用 所屬分類: 作品

            評(píng)論:
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-01 05:45 | Vampire.Kiss
            我操。 總算占個(gè)沙發(fā)了。  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-01 07:18 | foxtail
            很好 很強(qiáng)大 BT  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-01 18:10 | 某菜鳥(niǎo)
            非常感謝分享源代碼!

            贊!

            小聲問(wèn)一句:有沒(méi)有設(shè)計(jì)文檔?還是你想到哪寫(xiě)到哪?  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-01 18:24 | 陳梓瀚(vczh)
            設(shè)計(jì)文檔不提供。  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-01 21:22 | true
            你精力旺盛  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-02 07:07 | 某菜鳥(niǎo)
            很好,很神經(jīng),很強(qiáng)大。  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-03 05:30 | Lnn
            很好,很神,很強(qiáng)!  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-03 07:35 | Gohan
            啊,來(lái)支持一下大牛~  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-03 19:56 | 雪梨酒
            好牛虻啦!
              回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-03 23:28 | suxiaojack
            函數(shù)式解析非常不錯(cuò)!值得學(xué)習(xí)!
            不過(guò)速度有點(diǎn)慢。
            測(cè)試了一下,比用編譯型的東東慢了一千左右倍,實(shí)際應(yīng)用需要優(yōu)化才行。

            bench.free
            ______________________________________________
            _run(_global,readfile(vmpath++"Library.free"));

            local c=0;
            writeln("開(kāi)始");
            for( i in 1 to 1000)
            {
            for ( j in 1 to 1000000)
            {
            c=c+1;
            };
            };
            writeln("結(jié)束.",c);

            這個(gè)要等多久??
            ___________________________________________________

            _run(_global,readfile(vmpath++"Library.free"));

            local c=0;
            writeln("開(kāi)始");
            for( i in 1 to 1)
            {
            for ( j in 1 to 1000000)
            {
            c=c+1;
            };
            };
            writeln("結(jié)束.",c);
            這個(gè)要7秒在我的2.0G AMD CPU上。
              回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-03 23:34 | suxiaojack
            _run(_global,readfile(vmpath++"Library.free"));

            local c=0;
            fixed f=func(){
            writeln("開(kāi)始");
            for( i in 1 to 1)
            {
            for ( j in 1 to 1000000)
            {
            c=c+1;
            };
            writeln("結(jié)束.",c);
            };
            };
            f();
            這樣寫(xiě),時(shí)間少用了!只要4秒了!  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-04 00:10 | 陳梓瀚(vczh)
            哦,我明白了,是因?yàn)開(kāi)run(_global,readfile(vmpath++"Library.free")); 導(dǎo)致了這個(gè)區(qū)別。所以你用func的時(shí)候,尋找c的時(shí)間就縮短了。  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-04 18:06 | 陳梓瀚(vczh)
            不過(guò)這個(gè)腳本引擎的速度是快在庫(kù)上面的,動(dòng)態(tài)語(yǔ)言不適合計(jì)算密集型任務(wù)。  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-04 19:53 | suxiaojack
            動(dòng)態(tài)語(yǔ)言老外有做得很快的,現(xiàn)在都是動(dòng)態(tài)編譯了。比如java、tinyCC.開(kāi)放編譯接口給用戶。可以有eval函數(shù)出來(lái)。最早的動(dòng)態(tài)語(yǔ)言是全在自己寫(xiě)的虛擬機(jī)上解釋執(zhí)行,但現(xiàn)在的虛擬機(jī)又有解釋器部分,又還有編譯器部分,很多東東都在內(nèi)存中直接翻譯為機(jī)器碼執(zhí)行,速度快了很多。  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-04 21:48 | 空明流轉(zhuǎn)
            樓上的那種叫做JIT  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-04 21:50 | 空明流轉(zhuǎn)
            對(duì)了,有沒(méi)有能判斷是否為L(zhǎng)ALR1文法的技巧或者方法的?最近要給我的軟件渲染器做一個(gè)shader的編譯器.  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-05 05:49 | 陳梓瀚(vczh)
            那也得是弱類型或者強(qiáng)類型的才能順利JIT,無(wú)類型的JIT其實(shí)跟不JIT并沒(méi)有太大差別,因?yàn)橐獧z查的東西都非常多。而且JIT代碼生成的不好還會(huì)更慢。這門(mén)語(yǔ)言之所以做成這樣很大程度上是因?yàn)檎Z(yǔ)法決定的。開(kāi)放的語(yǔ)法總會(huì)有效率上或工程上的弱點(diǎn),兩者必居其一。所以我選擇了工程。  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-05 05:51 | 陳梓瀚(vczh)
            @空明流轉(zhuǎn)
            嘗試寫(xiě)文法,寫(xiě)不出來(lái)就是不行了。人處理而已。  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-05 08:01 | 空明流轉(zhuǎn)
            @陳梓瀚(vczh)
            我搞出來(lái)一串左遞歸文法。。。。  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2008-07-05 09:12 | 陳梓瀚(vczh)
            LALR不是有能力處理左遞歸么……  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2013-06-01 19:58 | Scan
            @陳梓瀚(vczh)
            老大,過(guò)去很多年了,能解釋下這里提到的這個(gè)觀點(diǎn)嗎?“那也得是弱類型或者強(qiáng)類型的才能順利JIT,無(wú)類型的JIT其實(shí)跟不JIT并沒(méi)有太大差別”。
            我現(xiàn)在也只停留在你當(dāng)年的這個(gè)認(rèn)識(shí)上,但luajit、v8的javascript,他們是怎么做到j(luò)it然后效率暴高的呢?能否簡(jiǎn)單解釋下?  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2013-06-02 07:45 | 陳梓瀚(vczh)
            @Scan
            因?yàn)樽隽祟愋屯茖?dǎo),盡管不可能得出精確的結(jié)果,但是大部分情況下你都可以得到概率最大的那個(gè)  回復(fù)  更多評(píng)論
              
            # re: Vczh Free Script 2.0 beta 發(fā)布 2015-10-12 03:17 | replica watches uk
            前來(lái)學(xué)習(xí)  回復(fù)  更多評(píng)論
              
            精品久久久久久无码专区| 亚洲国产精品无码久久| 久久久久国产日韩精品网站| 99久久精品免费看国产一区二区三区| 久久久久亚洲av无码专区导航| 无码伊人66久久大杳蕉网站谷歌| 天天爽天天狠久久久综合麻豆| 久久久久久夜精品精品免费啦| 精品国产乱码久久久久久1区2区 | 久久久久亚洲av成人无码电影 | 久久午夜综合久久| 日韩久久无码免费毛片软件| 国产精品久久久久久久久久影院 | 久久国产视屏| 久久婷婷国产综合精品| 亚洲成人精品久久| 久久高清一级毛片| 香蕉久久夜色精品国产尤物| 欧美久久综合九色综合| 久久午夜综合久久| 久久天天躁狠狠躁夜夜avapp| 国内精品久久久人妻中文字幕| 久久午夜无码鲁丝片午夜精品| 久久久国产精华液| 久久国产三级无码一区二区| 亚洲精品国产美女久久久| 久久综合丝袜日本网| 狠狠色丁香久久婷婷综合图片| 国产91色综合久久免费| 久久久久久亚洲精品影院| 久久精品国产亚洲综合色| 伊人情人综合成人久久网小说| 91精品国产综合久久精品| 久久久久久久波多野结衣高潮| 国产精品99久久久久久董美香| 久久久亚洲欧洲日产国码aⅴ | 久久久久久久免费视频| 精品一久久香蕉国产线看播放| 久久亚洲精品无码AV红樱桃| 三级片免费观看久久| 伊人久久无码精品中文字幕|