What is CamelBones?
“Freedom of choice - it's what you've got.” Devo - Freedom of Choice
CamelBones is about giving you more options for your Cocoa development. Objective-C is really quite nice - but it's not a perfect fit for every situation. There are occasions when you might find yourself saying "this would be so much simpler in Perl," or find yourself writing functionality that already exists in CPAN.
Alternatively, you might want to add a little bit of Perl to an Objective-C application, but you're getting bogged down in the complexity of Perl's embedding API. Or you've waded your way through that, only to find out that now you have to ship separate versions of your application for Tiger, Leopard, and Snow Leopard as libperl isn't binary-compatible from one version to the next, and it's in a different location for each version of Mac OS X.
CamelBones is a framework that gives you the option of using Perl when and where you need to - without taking away from you the option of using Objective-C wherever that's a better choice.
Please support CamelBones!
Software may be free, but unfortunately, rent and cat food aren't! Please consider helping out. I've been accepting donations through SourceForge for a long time now, and naturally I still do.
I've also created an affiliate ID at Amazon.com, and a page here that links to a number of Perl- and Cocoa-related books. I'll receive a small (4%) commission on the sale if you follow the links and buy those books, or in fact anything else from Amazon.com during the same browsing session. If you're a Perl and/or Cocoa developer, you'll want to own these books anyway, and you won't pay a penny more for them by buying them this way, so everybody wins!
As a third option, I've created a special promo code at Dreamhost. Follow the link, or just go to "http://dreamhost.com" and use the promo code "CAMELBONES" to sign up, and you'll receive up to $50 off on your web hosting. Web hosting is something you probably want anyway, and this way you get a discount too, so once again - everybody wins!
Last, but certainly not least, you could hire me. I offer fair rates for consulting, and if you're reading this site you've probably already seen the kind of work I can do. For the right gig, and with sufficient assistance with relocation costs, I'm also willing to consider full-time employment offers.
CamelBones 1.1.2 has been released through SourceForge:
This update features a performance enhancement patch and a few bug fixes:
- Added support for cacheing autoloaded ObjC methods. (Patch by Matt Sergeant)
- Fixed a bug that caused BOOL, char, and int values to be returned incorrectly from ObjC methods in some situations.
- Fixed a bug in argument passing to native methods, to correctly pass undef as NULL when the expected type is void*.
- Fixed bugs in CBPerlHash, where the Perl context was not correctly set up in several methods.
- Fixed a bug in CBWrapObjectiveCClass, where NSObject was added to its own @ISA.
- Fixed key enumerator bug in CBPerlHash - SourceForge tracker ID 3087368.
If you find CamelBones or ShuX useful, please consider donating!
New web site
Welcome to the new web site. Alex did a great job on the old site, but that was over five years ago. Times have changed, and the design (based on Mac OS X's original "Aqua" color scheme) was looking kind of outdated. It was also rather difficult to maintain, based around an odd XML+XSLT to HTML tool chain, because yours truly forgot one of the cardinal rules of development: KISS.