Hello Paul.
You raise some good points imho.
However, what I am replying to here is solely the suggestion of using C++.
You may of course choose to ignore my reply as I'm not a DT developer.
I do have 25+ years of professional experience writing software for
image processing/generation though. Most of it in C++. So maybe I'm
worth listening to.
Before I start: I think the choice of C was excellent one of Johannes –
at the time.
Today I would probably choose Rust for any sort of
refactoring/architecture/API improvements of any C code base I can think
of. Including that of DT.
C++ – I do not even know where to start how bad an idea I'd consider that.
But to add some context: There is an ongoing effort from people in the
Academy of Motion Pictures Software Association (ASWF) to expose all
functionality as C APIs.
One reason is that all the libs ASWF hosts will be wrapped in safe Rust
APIs.
What's more: core OpenEXR, just for example, is just being refactored in
C (current codebase is C++).
These are people relying on such software like OIIO, OCIO, OSL, etc. to
generate millions of images for motion pictures and series. They are
turning their backs on C++. It's early days but ... go figure.
My suggestion would be: make a nice, safe RUst API to allow people
writing modules in that language.
Then, if people really feel the need, refactor DT, bit by bit, into Rust.
Starting with the most hard to read parts of the codebase that someone
new may want to contribute to.
Just my two c.
Beers,
.mm
___________________________________________________________________________
darktable developer mailing list
to unsubscribe send a mail to darktable-dev+unsubscr...@lists.darktable.org