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