GS 全新的動態指令碼語言V2 0

2021-06-01 05:58:14 字數 1809 閱讀 1545

gs 全稱gscript,前幾日剛延生的一門新的動態指令碼語言,今日再次更新,

更新內容:

1、解析引擎優化,採用表示式**,id**,效能比之前提公升近一倍.

2、引用方式更新,採用"最終實體引用"模式,解決"環形引用"問題

3、語言上增加了關鍵字:typeof        typecast       sizeof

4、增加了暫存器程式設計方式(提公升效能),暫存器操作關鍵字:#push #pop ,暫存器名稱a-z,表示方法 #[a-z]

5、支援預處理指令:#define、#undef、#include

測試效果:

指令碼內容:

test1.c

#include <.>

string fn=getch(

"請選擇使用的函式\x32(注:函式功能一致,但效率不同。)

[a]使用c++函式

[b]使用指令碼函式(普通版)

[c]使用指令碼函式(暫存器版)

輸入選項:[ ]\b\b");

print("%s\n",fn);

switch(fn)

test1.h

#define printf	print

#define bailout 16

#define max_iterations 1000

#define double real

#define long int

int mandelbrota(double x, double y)

} #define cr #a

#define ci #b

#define zi #c

#define zr #d

#define i #e

#define temp #f

#define zr2 #i

#define zi2 #j

int mandelbrotb(real x, real y)

//#pop #c #b #a;

return i<=max_iterations;

}#undef cr

#undef ci

#undef zi

#undef zr

#undef i

#undef temp

#undef zr2

#undef zi2

int _tmaina ()

} print ("\n");

now=time();

real query_time = (now-old)/1000.0;

print ("time %lf", query_time);

return 0;

}int _tmainb ()

} print ("\n");

now=time();

real query_time = (now-old)/1000.0;

print ("time %lf", query_time);

return 0;

}int _tmainc ()

} print ("\n");

now=time();

real query_time = (now-old)/1000.0;

print ("time %lf", query_time);

return 0;

}

以上程式內容來互連網上乙個很有趣的程式,執行結果很神奇!

測試指令碼截圖:



強弱型別 靜態語言 動態語言 指令碼語言

強型別變數一旦宣告 型別不能改變 強型別不支援以下 弱型別支援 1 2 靜態語言 變數需要提前宣告 動態語言不需要 靜態語言 c int a 3 a 1 動態語言 python a 3a 1 動態語言 執行時可以改變結構 新的函式 物件 可以被引進,已有的函式可以被刪除或者結構上的變化。動態語言的型...

指令碼語言 shell指令碼

指令碼語言的特徵 指令碼語言 於批處理命令語言,但更接近於程式語言。與批處理命令語言的差別是,指令碼語言有變數和豐富的控制語句 與一般程式語言的差別是 指令碼語言變數的值主要是字串,語言的基本單位是命令 而程式語言變數主要是數值,語言的基本單位是表示式 指令碼語言一般是解釋執行的,速度低,但開發成本...

使用指令碼語言

dim myvar myvar hello world myvar 在這個例子中,option explicit語句強制所有的變數必須專門宣告。dim語句宣告了變數myvar。如果在使用變數前沒有宣告變數,vbscript就會給出執行時錯誤資訊 variable is undefined myvar...