lib/scope.rb in expressive-0.0.1 vs lib/scope.rb in expressive-0.0.2

- old
+ new

@@ -41,13 +41,13 @@ syntax('set') do |scope, cells| scope[cells.first.text_value] = cells[1].eval(scope) end - define('+') {|a,b| a + b } - define('-') {|a,b| a - b } - define('*') {|a,b| a * b } - define('/') {|a,b| a / b } + define('+') {|a,b| a.to_f + b.to_f } + define('-') {|a,b| a.to_f - b.to_f } + define('*') {|a,b| a.to_f * b.to_f } + define('/') {|a,b| a.to_f / b.to_f } define('=') {|a,b| a == b } - define('sum') {|*args| args.flatten.reduce(:+) } + define('sum') {|*args| args.flatten.map(&:to_f).reduce(:+) } end end