In this months release we continue to bring Jackbox more in line the Ruby base. We have addressed a couple of issues that existed with use of Injectors at the Ruby top-level. The Injector metaphor now works consistently all the way through. The basic idea to remember at the top is that #inject does its work on the Object class while #enrich does so in the 'main' instance.
injector :Major do
def meth
1
end
end
inject Major()
meth.should == 1
eject :Major
expect{meth}.to raise_error(NoMethodError)
|
# Because 'main' is an Object instance, granted
# a (special Object instance), the previous call
# to #eject operates like in any other instance
# and ejects #Major only for the 'main' instance
Object.new.meth.should == 1
# To actually eject from Object
Object.eject :Major
expect{Object.new.meth}.to raise_error(NoMethodError)
|
We have also fixed some issues that existed with ancestor chains, have introduced new methods to #inspect, #to_s, and #show Injectors, and once again cleaned up the examples, code, and the readme file. This last one continues to grow, and hopefully is a good read.
We have also decided to put-off, the Jackbox Challenge until we have a 1.0 release candidate which should be coming. Unfortunately, we have to do development in between other the things we are involved. But, it I promise it won't be long.
Once again Many Thanks to all the wonderful people who have shown their interest and support. Don't forget to visit our webpage: http://jackbox.us.
To install just type: gem install jackbox
lha
No comments:
Post a Comment