Παραθέτω το πρόγραμμα στα αγγλικά (σε άλλη ανάρτηση θα φτιάξω το ελληνικό, αν και θα είναι πιο αργό επειδή ο μεταφραστής βγάζει τους τόνους πρώτα)
Εκκίνηση της γλώσσας (m2000.exe), σ α και επικόλληση, βγαίνουμε με Esc και γράφουμε α και παίρνουμε μια λίστα τιμών στην οθόνη όπως αυτή παρακάτω:
module b {
function x {=1000}
a=x()
}
module alfabetagama {
function abignametoo {=1000}
alfabeta=abignametoo()
}
module alfabetaDot {
function abignametoo {=1000}
alfabeta=.abignametoo()
}
module alfa_beta_gama {
function a_big_name_too {=1000}
alfa_beta=a_big_name_too()
}
Function Pr$ {
read a
if a=1 then {="optimization on"} else ="optimization off"
}
Form 80,40
Cls 1, 0 : Pen 14
Print $(4), \\ Proportional Printing
for k=1 to 2 {
if k=1 then {optimization on } else optimization off
Print Pr$(k)
Print "Normal Names"
local alfabeta,betagama,deltaepsilon
betagama=2
deltaepsilon=45
Profiler
for i=1 to 3000
alfabeta=sqrt(betagama)+sin(deltaepsilon)
alfabetagama
next i
Print TimeCount
refresh
Print "Names with _"
local alfa_beta,beta_gama,delta_epsilon
beta_gama=2
delta_epsilon=45
Profiler
for i=1 to 3000
alfa_beta=sqrt(beta_gama)+sin(delta_epsilon)
alfa_beta_gama
next i
Print TimeCount
refresh
Print "Names with one lettter"
local a, b, d
b=2
d=45
Profiler
for i=1 to 3000
a=sqrt(b)+sin(.d)
b
next i
Print TimeCount
refresh
Print "Full Names with dot infront and @ in system functions"
local alfabeta,betagama,deltaepsilon
betagama=2
deltaepsilon=45
Profiler
for i=1 to 3000
.alfabeta=@sqrt(.beta_gama)+@sin(.delta_epsilon)
.alfabetaDot
next i
Print TimeCount
refresh
}
Print "Using fast For {}"
Refresh
for k=1 to 2 {
if k=1 then {optimization on } else optimization off
Print Pr$(k)
Print "Normal Names"
local alfabeta,betagama,deltaepsilon
betagama=2
deltaepsilon=45
Profiler
for i=1 to 3000 {
alfabeta=sqrt(betagama)+sin(deltaepsilon)
alfabetagama
}
Print TimeCount
refresh
Print "Names with _"
local alfa_beta,beta_gama,delta_epsilon
beta_gama=2
delta_epsilon=45
Profiler
for i=1 to 3000 {
alfa_beta=sqrt(beta_gama)+sin(delta_epsilon)
alfa_beta_gama
}
Print TimeCount
refresh
Print "Names with one lettter"
local a, b, d
b=2
d=45
Profiler
for i=1 to 3000 {
a=sqrt(b)+sin(.d)
b
}
Print TimeCount
refresh
Print "Full Names with dot infront and @ in system functions"
local alfabeta,betagama,deltaepsilon
betagama=2
deltaepsilon=45
Profiler
for i=1 to 3000 {
.alfabeta=@sqrt(.beta_gama)+@sin(.delta_epsilon)
.alfabetaDot
}
Print TimeCount
refresh
}
Εκκίνηση της γλώσσας (m2000.exe), σ α και επικόλληση, βγαίνουμε με Esc και γράφουμε α και παίρνουμε μια λίστα τιμών στην οθόνη όπως αυτή παρακάτω:
module b {
function x {=1000}
a=x()
}
module alfabetagama {
function abignametoo {=1000}
alfabeta=abignametoo()
}
module alfabetaDot {
function abignametoo {=1000}
alfabeta=.abignametoo()
}
module alfa_beta_gama {
function a_big_name_too {=1000}
alfa_beta=a_big_name_too()
}
Function Pr$ {
read a
if a=1 then {="optimization on"} else ="optimization off"
}
Form 80,40
Cls 1, 0 : Pen 14
Print $(4), \\ Proportional Printing
for k=1 to 2 {
if k=1 then {optimization on } else optimization off
Print Pr$(k)
Print "Normal Names"
local alfabeta,betagama,deltaepsilon
betagama=2
deltaepsilon=45
Profiler
for i=1 to 3000
alfabeta=sqrt(betagama)+sin(deltaepsilon)
alfabetagama
next i
Print TimeCount
refresh
Print "Names with _"
local alfa_beta,beta_gama,delta_epsilon
beta_gama=2
delta_epsilon=45
Profiler
for i=1 to 3000
alfa_beta=sqrt(beta_gama)+sin(delta_epsilon)
alfa_beta_gama
next i
Print TimeCount
refresh
Print "Names with one lettter"
local a, b, d
b=2
d=45
Profiler
for i=1 to 3000
a=sqrt(b)+sin(.d)
b
next i
Print TimeCount
refresh
Print "Full Names with dot infront and @ in system functions"
local alfabeta,betagama,deltaepsilon
betagama=2
deltaepsilon=45
Profiler
for i=1 to 3000
.alfabeta=@sqrt(.beta_gama)+@sin(.delta_epsilon)
.alfabetaDot
next i
Print TimeCount
refresh
}
Print "Using fast For {}"
Refresh
for k=1 to 2 {
if k=1 then {optimization on } else optimization off
Print Pr$(k)
Print "Normal Names"
local alfabeta,betagama,deltaepsilon
betagama=2
deltaepsilon=45
Profiler
for i=1 to 3000 {
alfabeta=sqrt(betagama)+sin(deltaepsilon)
alfabetagama
}
Print TimeCount
refresh
Print "Names with _"
local alfa_beta,beta_gama,delta_epsilon
beta_gama=2
delta_epsilon=45
Profiler
for i=1 to 3000 {
alfa_beta=sqrt(beta_gama)+sin(delta_epsilon)
alfa_beta_gama
}
Print TimeCount
refresh
Print "Names with one lettter"
local a, b, d
b=2
d=45
Profiler
for i=1 to 3000 {
a=sqrt(b)+sin(.d)
b
}
Print TimeCount
refresh
Print "Full Names with dot infront and @ in system functions"
local alfabeta,betagama,deltaepsilon
betagama=2
deltaepsilon=45
Profiler
for i=1 to 3000 {
.alfabeta=@sqrt(.beta_gama)+@sin(.delta_epsilon)
.alfabetaDot
}
Print TimeCount
refresh
}
Δεν υπάρχουν σχόλια:
Δημοσίευση σχολίου
You can feel free to write any suggestion, or idea on the subject.