Re: Cairo and ISO C++

Behdad Esfahbod <[email protected]>
Newsgroups gmane.comp.lib.cairo
Message-ID <[email protected]>
On 14-01-01 10:23 AM, Herb Sutter wrote:
> Hi, my name is Herb Sutter and I chair the ISO C++ standards committee. Behdad
> referred me to this list as the right place to raise this question:
> 
> We are actively looking at the potential standardization of a basic 2D drawing
> library for ISO C++, and would like to base it on (or outright adopt, possibly
> as a binding) solid prior art in the form of an existing library. You can find
> a quick summary of goals and discussions to date in these two papers:
> 
> ·         http://isocpp.org/files/papers/n3791.html
> 
> ·         http://isocpp.org/files/papers/N3825.pdf
> 
> As noted in the latter paper, we are currently investigating the direction of
> proposing a mechanically C++-ified version of Cairo. Specifically,
> “mechanically C++-ified” means taking Cairo as-is and transforming it with a
> one-page list of mechanical changes such as turning _create functions into
> constructors, (mystruct*, int length) function parameters to vector<struct>&
> parameters, that sort of thing – the design and abstractions and functions are
> unchanged. This would also allow us to track Cairo as it evolves in the
> future, by continuing to reapply the same rules to new updates to Cairo.

Very interesting!  Looks like you already got most of it written down.  I
think cairo is indeed a great fit for what the group is looking for.

During cairo's development, there were some decisions made that we regretted
later on.  I was going to suggest that those be revisited for standardization,
but reading the documents you linked, I think that will go down the same
design-by-committee path that you are trying to avoid.  So, personally, I
fully support the current position outlined in the N3825 document and am
willing to help with the effort.


> We know about Cairomm but it seems to have languished so we are focused on
> current Cairo as a starting point, even though it’s not C++ -- we believe
> Cairo itself it is very well written C (already in an OO style, already
> const-correct, etc.).

Yes, I think you can go straight to cairo itself.  I'm guessing that you
should be able to autogenerate the binding.  Perhaps, using
gobject-introspection to generate a typelib for cairo, then reading the
typelib, transforming it, and writing out the binding.


> We want to make sure we’re doing this in the right way and with the group’s
> approval, so your feedback would be much appreciated. Also, we might want to
> reuse parts of the Cairo documentation in our specification, which we
> understand is governed by MPL 1.1, and we would like to know if this would be
> all right with your group.

I sure would love to see cairo's functionality and quality be available
anywhere C++ is :).

Cheers,
-- 
behdad
http://behdad.org/
-- 
cairo mailing list
[email protected]
http://lists.cairographics.org/mailman/listinfo/cairo
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.