Lua для калькуляторов HP, TI и CASIO

| рубрика «Калькуляторы» | автор Дима Масалов
Метки: ,

Доброе Утро !

Жаль, нет питона для HP-50g. Сколько можно было бы скриптов запустить... SysRPL - весьма мрачная "вещь в себе", ассемблер x86 или, тем более, PDP-шных машин, покажется веселее.

Для HP 49g+, HP 50g, TI-89 и CASIO ClassPad есть реализации ЯВУ Lua ( HPLua, Lua89 и CPLua, соответственно ):

Lua (язык программирования)

Сайт языка: https://www.lua.org

Википедия:

HPLua для HP 49g+, HP 50g

HPLua, Lua for HP Calculators HP49g+ & HP50g: https://sourceforge.net/projects/hplua/

Lua on HP 50g

Lua89 для TI-89

https://www.ticalc.org/archives/files/fileinfo/358/35869.html

CPLua для CASIO ClassPad

Project: Cplua: https://www.casiocalc.org/?showtopic=2314

Тест "8 ферзей"

 Lua
-----
 local a,r,s,t,x,y,n
 for n=1,100 do
   r=8
   s=0
   x=0
   a={}
   repeat
     x=x+1
     a[x]=r
     repeat
       s=s+1
       y=x
       while y>1 do
         y=y-1
         t=a[x]-a[y]
         if t<0 then
           t=-t
         end
         if (t==0) or (x-y==t) then
           y=0
           a[x]=a[x]-1
           while a[x]==0 do
             x=x-1
             a[x]=a[x]-1
           end
         end
       end
     until y==1
   until x==r
 end
 print(s)

Результаты:

2:20         ClassPad 330      Formula / List / Ver.3.3
2:08         ClassPad 300+     Formula / List / Ver.2.2
1:30         HP-50G            UserRPL
1:29         TI-Nspire         Formula / List / TI-84+ Keypad / Ver.3.0
1:13         TI-Nspire         Formula / List / TI-84+ Keypad / Ver.1.2
1:10         TI-Nspire         Formula / List / TI-84+ Keypad / Ver.1.3
   8.3       TI-Nspire CAS     Formula / List / Ver.1.2
   7.5       TI-Nspire         Formula / List / Ver.1.2
   4.2       TI-Nspire CAS     Formula / List / Ver.1.3
   3.9       TI-Nspire         Formula / List / Ver.1.3
   2.3       TI-Nspire CAS     Formula / List / Ver.3.0
   2.1       TI-Nspire         Formula / List / Ver.3.0
   1.10      ClassPad 300+     Lua / CPLua 0.8 / Bytecode
   0.915     HP-50G            HP Pascal Studio 2.1 / Cross Compiler
   0.243     HP-50G            Lua / HPLua 0.4 / Bytecode
   0.125     TI-Nspire CAS     Lua / Bytecode
   0.120     TI-Nspire         Lua / Bytecode
   0.0504    TI-Nspire CAS     Lua / Bytecode / OS 3.1
   0.0445    TI-Nspire CX CAS  Lua / Bytecode / OS 3.1
   0.000484  HP-50G            C / RegVars / HPGCC 3.0 / Cross Compiler
   0.000404  HP-50G            Assembly / ARM9 @ 75 MHz

ClassPad 300 PLUS ускоряется в 116 раз; HP 50g - в 370 раз.


Dima Masalov

FIDO-NET - 2:461/640.9 AKA 2:461/43.9

E-MAIL - mds at ire dot kharkov dot ua