Boost logo

Boost :

Subject: Re: [boost] Use of boost in safety critical work
From: Paul A. Bristow (pbristow_at_[hidden])
Date: 2014-12-06 06:12:21

> -----Original Message-----
> From: Boost [mailto:boost-bounces_at_[hidden]] On Behalf Of Andrew Marlow
> Sent: 05 December 2014 09:38
> To: boost
> Subject: [boost] Use of boost in safety critical work
> Hello fellow boosters,
> I am currently considering a job which involves embedded safety critical.
> It is for a neonatal ventilator so the safety critical aspect really is
critical rather than
> just 'jolly important'. The company says the development will be in C++ but
they have
> not even heard of boost, let alone use it. They introduced me to a new
> well new to me anyway: SOUP.
> It stands for Software of Unknown Pedigree. They classify boost as SOUP.

I think this is plain wrong.

Boost Libraries are all

1 Peer reviewed.

2 Documented.

3 What you see is what you get - all the source code and tests and examples are
provided for you to do your own code review.

4 Provided with tests, often extensive.

5 Tested continuously on a variety of platforms.

6 In widespread use - bugs get found, reported and fixed (often quickly).

7 Community support.

> I have used boost before in embedded work but I have never done safety
> work before so I don't know how widely boost is used there. Can anyone who
> worked on safety critical stuff comment please?

Nearly all Boost libraries assume use of exceptions, so are unsuited to
applications that forbid exceptions, usually to meet hard real-time

(However as others have noted, it is usually only tiny parts of systems like
fighter planes and incubators that need to eschew exceptions - nearly all the
rest must use exceptions to achieve any sort of quality and function in
reporting and displays etc).

Of course, you will need to test your own complete systems, but you can use
Boost code with confidence.



PS If you buy software from other vendors, and look closely, you may find that
you get a bit of Boost anyway!

Boost list run by bdawes at, gregod at, cpdaniel at, john at