Boost logo

Boost :

From: Jeff Garland (azswdude_at_[hidden])
Date: 2008-03-21 09:01:30

Esteve Fernandez wrote:
> Hi all, I'm new to this list but have been tracking Boost development for a
> long time. Never thought I could contribute something new to Boost, but after
> seeing this year's GSoC Boost proposal, I changed my mind and decided to take
> a deeper look at the JSON proposal.
> I've used the Boost.serialization library extensively and always end up
> needing something more portable than the binary archive and less heavyweight
> than the XML archive. Also, I spend a lot of time developing with
> Boost.Python and a format already supported by Python would be great, so
> seeing there was interest in a JSON archive was the perfect opportunity to
> join.
> Anyway, I've some points regarding this project before I apply, don't know
> if I should send them to Jeff (who suggested the idea) or to Robert (who
> implemented Boost.serialization). Instead of just bothering them, I'll
> bother all the subscribers to boost_at_[hidden] :-)

Good choice...waiting for a particular person is sometimes slow.

> - the JSON spec is quite simple, but given that it's a subset of YAML
> (actually Syck parses JSON as well), should it support it in the future as
> well?

I see YAML as another potentially interesting archive target, but I think
others have established that it's different.

> - what about Unicode? I know that Boost.Regex supports Unicode if compiled
> against ICU and the JSON spec states that everything must be in Unicode
> (correct me if I'm wrong)

Don't know, but this is certainly an issue. There's some utf8 facet stuff
floating around in boost (boost/detail/utf8_codecvt_facet.hpp) I think -- I'm
not sure if that solves your problem though.

> - TinyJSON and JSON.Spirit both use a MIT-like license (JSON.Spirit is
> licensed under CPOL). The Boost license is compatible with them but, could it
> pose a problem? There's JSONcpp [1] as well, which is public domain.

MIT is compatible, but we're really trying get everything to be Boost license.

> - wading through the Boost mailing list archives, I found a message [2] by
> Daryle Walker in which he expressed interest in a JSON serializer some while
> ago (2005), but I think it wasn't discussed any further. Eric Newhuis wrote
> again about having a JSON archive just a few weeks ago [3]

Others are chiming in...

> - which platforms must be supported? I can only provide support to GCC under
> Linux, but I guess it has to support MSVC and some other platforms. Will it
> have to be available for all the platforms supported by Boost at the end of
> the summer or is it more of a process? That is, given that one of the

That's up to you to propose. Given that we here at Boost are interested in
cross-platform code it's certainly better to have a broader support. In case
you aren't aware, you can download an free (called express) version of vc8.
But no matter, even if you don't test directly on any other platforms if you
still to std c++ you should be ok. The mentors and others on the list will
also help you with this issue.

> purposes of GSoC is to involve more people into free software/open source
> projects, whoever (I hope it's me :-)) implements the JSON serializer, will
> become its maintainer too and will take care of all the tasks related to
> accept patches, track bugs, add support for future/incomplete platforms, etc.

That's the general idea :-)



Boost list run by bdawes at, gregod at, cpdaniel at, john at