diff --git a/HISTORY.md b/HISTORY.md index 6f4842f..2c5a4be 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -3,6 +3,7 @@ ## Not Yet Released ### Features - Upgrade to Shen 17.2 +- Upgrade to Klam 0.0.8 for performance improvements ### Bug Fixes - Evaluating "c#13;" no longer triggers the message "warning: encountered \r in middle of line, treated as a mere space." diff --git a/lib/shen_ruby/converters.rb b/lib/shen_ruby/converters.rb index c870c3e..40a469e 100644 --- a/lib/shen_ruby/converters.rb +++ b/lib/shen_ruby/converters.rb @@ -11,13 +11,11 @@ def list_to_array(l) end def array_to_vector(a) - v = Klam::Absvector.new(a) - v.unshift(a.size) - v + Klam::Absvector.new(a) end def vector_to_array(v) - Array.new(v.slice(1,v[0])) + v.to_a end end end diff --git a/lib/shen_ruby/shen.rb b/lib/shen_ruby/shen.rb index 5e09584..b4f040f 100644 --- a/lib/shen_ruby/shen.rb +++ b/lib/shen_ruby/shen.rb @@ -55,7 +55,7 @@ def element?(x, l) def vector(n) v = ::Klam::Absvector.new(n + 1, :"shen.fail!") - v[0] = n + v.store(0, n) v end end diff --git a/shen-ruby.gemspec b/shen-ruby.gemspec index 5bc8adc..2b58bd8 100644 --- a/shen-ruby.gemspec +++ b/shen-ruby.gemspec @@ -16,7 +16,7 @@ Gem::Specification.new do |s| s.required_ruby_version = ">= 1.9.3" - s.add_runtime_dependency 'klam', '0.0.7', '0.0.7' + s.add_runtime_dependency 'klam', '0.0.8', '0.0.8' s.add_development_dependency 'rake', '~> 10.4.2', '>= 10.4.2' s.add_development_dependency 'rspec', '~> 3.1', '>= 3.1.0'