Le 2012-02-22 à 15:30:00, katja a écrit :
Pd classes can be done in C very well, if procedures are not too
complicated and not meant to be used in other contexts.
In my practice, C is not high-level enough. So, for coding my own C++
externals, I use C++ together with a custom preprocessor which does a job
similar to what SWIG does.
For a reusable audio analysis lib I would straightforwardly use C++,
where it not for the considerations mentioned by Mathieu, Hans and
Marvin. The intricate runtime support required for C++ leads to specific
incompatibilities which don't exist for C.
IMHO, fighting those incompatibilities is worth it ; also, some of them
don't exist anymore (in recent years), and some others have a workaround
whenever you provide a C interface to a C++ library, and some others don't
exist if you turn off try/catch/throw support.
A collection of useful routines which may be used individually, or
combined as integrated analysis-engine, in the context of a framework
like Pd, MaxMsp, SuperCollider.
Can you be more specific about what this will be ?
I use to link GNU C++ standard libs statically, just in case my class
is used with a Pd which doesn't have them. This adds more than 100 KB
to the executable size, not so nice detail.
Isn't this mostly when you use STL ? The use of STL is optional. For
example, I almost never use #include <fstream> in C++, I still prefer
<stdio.h>.
A C lib would not impose all these concerns on an application
programmer. I'm inclined to look at C once more.
Instead, a C lib will impose other concerns that C++ won't. What will
those be ?
______________________________________________________________________
| Mathieu BOUCHARD ----- téléphone : +1.514.383.3801 ----- Montréal, QC
_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management ->
http://lists.puredata.info/listinfo/pd-list