Language Hopping with YAML
So far, 2006 is shaping up to be a great year for YAML, due to recent work at a Chupei hackathon to get Perl’s YAML::Syck module on its legs and with a tremendous patch from Hirokazu Yamamoto (ocean) to fix memory leaks and segfaults in Syck just previous to the release of Ruby 1.8.4.
At present, Syck is the most comprehensive toolkit around for handling YAML. Here is how it stands with language support:
- As mentioned: YAML::Syck for Perl, which now supports dumping and loading type tags.
- Pugs (Perl6) has had basic YAML support for awhile.
- PySyck is not the binding packaged with Syck. This binding is much better and supports type tagging, follows much of the same conventions as Ruby’s YAML support.
- And, of course, Syck includes Ruby, Lua and Cocoa bindings.
My next project is to write a test harness that will siphon the testing suite through this grand circulatory system and make sure it all comes out okay in the end. If you’d like to pitch in, the Syck repository is open to all interested contributors.