fix all the cases, much white noise, array to list, string to sym stuff

This commit is contained in:
Torsten Ruger
2015-09-19 14:53:30 +03:00
parent 3b0b91f2fb
commit 21b652456d
78 changed files with 690 additions and 559 deletions

View File

@ -3,9 +3,12 @@ class FooBo
end
-- -- --
s(:list, [s(:class, "FooBo", nil, [s(:call,
s(:name, "call"),
s(:arguments,
s(:int, 35)),
s(:receiver,
s(:module, "Bar")))])])
s(:expressions,
s(:class, :FooBo,
s(:derives, nil),
s(:call,
s(:name, :call),
s(:arguments,
s(:int, 35)),
s(:receiver,
s(:module, "Bar")))))

View File

@ -4,14 +4,16 @@ end
foo( 3 )
-- -- --
s(:list, [s(:function, :int,
s(:name, "foo"),
s(:parameters,
s(:field, :ref, :x)),
s(:expressions,
s(:assign,
s(:name, "a"),
s(:int, 5)))), s(:call,
s(:name, "foo"),
s(:arguments,
s(:int, 3)))])
s(:expressions,
s(:function, :int,
s(:name, :foo),
s(:parameters,
s(:field, :ref, :x)),
s(:expressions,
s(:assign,
s(:name, :a),
s(:int, 5)))),
s(:call,
s(:name, :foo),
s(:arguments,
s(:int, 3))))

View File

@ -12,43 +12,45 @@ end
fibonaccit( 10 )
-- -- --
s(:list, [s(:function, :int,
s(:name, "fibonaccit"),
s(:parameters,
s(:field, :int, :n)),
s(:expressions,
s(:assign,
s(:name, "a"),
s(:int, 0)),
s(:assign,
s(:name, "b"),
s(:int, 1)),
s(:while,
s(:condition,
s(:operator, ">",
s(:name, "n"),
s(:int, 1))),
s(:expressions,
s(:assign,
s(:name, "tmp"),
s(:name, "a")),
s(:assign,
s(:name, "a"),
s(:name, "b")),
s(:assign,
s(:name, "b"),
s(:operator, "+",
s(:name, "tmp"),
s(:name, "b"))),
s(:call,
s(:name, "puts"),
s(:arguments,
s(:name, "b"))),
s(:assign,
s(:name, "n"),
s(:operator, "-",
s(:name, "n"),
s(:int, 1))))))), s(:call,
s(:name, "fibonaccit"),
s(:arguments,
s(:int, 10)))])
s(:expressions,
s(:function, :int,
s(:name, :fibonaccit),
s(:parameters,
s(:field, :int, :n)),
s(:expressions,
s(:assign,
s(:name, :a),
s(:int, 0)),
s(:assign,
s(:name, :b),
s(:int, 1)),
s(:while,
s(:condition,
s(:operator, ">",
s(:name, :n),
s(:int, 1))),
s(:expressions,
s(:assign,
s(:name, :tmp),
s(:name, :a)),
s(:assign,
s(:name, :a),
s(:name, :b)),
s(:assign,
s(:name, :b),
s(:operator, "+",
s(:name, :tmp),
s(:name, :b))),
s(:call,
s(:name, :puts),
s(:arguments,
s(:name, :b))),
s(:assign,
s(:name, :n),
s(:operator, "-",
s(:name, :n),
s(:int, 1))))))),
s(:call,
s(:name, :fibonaccit),
s(:arguments,
s(:int, 10))))

View File

@ -4,13 +4,16 @@ module Fibo
end
-- -- --
s(:list, [s(:module, "Fibo", [s(:assign,
s(:name, "a"),
s(:operator, "+",
s(:int, 5),
s(:name, "foo"))), s(:call,
s(:name, "bar"),
s(:arguments,
s(:name, "b"),
s(:name, "a"),
s(:name, "r")))])])
s(:expressions,
s(:module, :Fibo,
s(:assign,
s(:name, :a),
s(:operator, "+",
s(:int, 5),
s(:name, :foo))),
s(:call,
s(:name, :bar),
s(:arguments,
s(:name, :b),
s(:name, :a),
s(:name, :r)))))

View File

@ -8,17 +8,20 @@ module Fibo
end
-- -- --
s(:list, [s(:module, "Fibo", [s(:function, :int,
s(:name, "fibonaccit"),
s(:parameters,
s(:field, :int, :n)),
s(:expressions,
s(:name, "int"),
s(:assign,
s(:name, "a"),
s(:int, 0)),
s(:return,
s(:name, "a")))), s(:call,
s(:name, "fibonaccit"),
s(:arguments,
s(:int, 10)))])])
s(:expressions,
s(:module, :Fibo,
s(:function, :int,
s(:name, :fibonaccit),
s(:parameters,
s(:field, :int, :n)),
s(:expressions,
s(:name, :int),
s(:assign,
s(:name, :a),
s(:int, 0)),
s(:return,
s(:name, :a)))),
s(:call,
s(:name, :fibonaccit),
s(:arguments,
s(:int, 10)))))

View File

@ -5,8 +5,12 @@ module FooBo
end
-- -- --
s(:list, [s(:module, "FooBo", [s(:class, "Bar", nil, [s(:assign,
s(:name, "a"),
s(:operator, "+",
s(:int, 5),
s(:name, "foo")))])])])
s(:expressions,
s(:module, :FooBo,
s(:class, :Bar,
s(:derives, nil),
s(:assign,
s(:name, :a),
s(:operator, "+",
s(:int, 5),
s(:name, :foo))))))