Parrot (PASM) を試す
-
付与されたタグ:
- Perl
Perl6のVMになるParrotで少しプログラムを組んでみた。一番低レベルのPASMを実験。少し書いたら力尽きた。やはりこんなものは人の手で書くのは大変だ。
set I1, 10 set I2, I1 set S1, "\n" set S2, ", " REDO: print I1 print S2 print I2 print S1 dec I1 lt I1,1,END mul I2, I2, I1 branch REDO END: print I1 print S2 print I2 print S1 end
10の階乗を求めるサンプル。これをfact.pasmで保存して以下のように実行する。
$ parrot fact.pasm 10, 10 9, 90 8, 720 7, 5040 6, 30240 5, 151200 4, 604800 3, 1814400 2, 3628800 1, 3628800 0, 3628800
まあ、大変だね