> On 23 Sep 2021, at 6:46 am, Wietse Venema <[email protected]> wrote:
>
> C and C++ are similar enough that C can easily be wrapped in C++.
> I'd love to adopt Gtest which I have been using internally at Google
> over the past 5+ years.
Sure, but these days you can write C in any language. :-)
By which I mean that many languages support a C FFI, at least
in Haskell's case it is actually rather easy and idiomatic to
embed C APIs, and then get excellent test coverage of the
enclosing code from "QuickCheck", though not the internal
execution of underlying C API.
Since one might then be tempted to actually take advantage of
robust in-process concurrency, the C code thus integrated would
need to lose mutable globals (one time initialisation of shared
static settings would be fine).
Anyway, just off topic musings... FWIW, ~15 years I embedded
the Postfix SMTP client I/O layer in Perl, and had a nice high
level API just issue a command with an expected reply first digit,
and either succeed or raise an exception. Timeouts, ... all
handled by the Postfix C code (tweakable from Perl as the SMTP
state evolved). Layered multi-language development can be a win.
Helps discipline around separation of duties.
--
Viktor.