You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+20-10Lines changed: 20 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,9 +12,17 @@ We are dedicated to connecting the world through a high level, modern C++ networ
12
12
13
13
## Repositories
14
14
15
-
[chops-net-ip](https://connectivecpp.github.io/chops-net-ip), a high level, general purpose C++17 networking API that simplifies creating TCP and UDP network connections.
15
+
[chops-net-ip](https://connectivecpp.github.io/chops-net-ip), a high level, general purpose C++ 20 networking API that simplifies creating TCP and UDP network connections.
16
16
17
-
[utility-rack](https://connectivecpp.github.io/utility-rack), a tasty collection of utilities, including general purpose functionality used in the Chops Net IP repository.
17
+
[utility-rack](https://connectivecpp.github.io/utility-rack), a small and tasty collection of utilities, although most of them are no longer needed in C++ 20.
18
+
19
+
[wait-queue](https://connectivecpp.github.io/wait-queue), a header-only C++ 20 MPMC thread-safe queue.
20
+
21
+
[binary-serialize](https://connectivecpp.github.io/binary-serialize), a header-only C++ 20 library for binary serialization, using `std::format` style syntax (work in progress).
22
+
23
+
[periodic-timer](https://connectivecpp.github.io/periodic-timer), a header-only C++ 20 asynchronous periodic timer, using Asio facilities.
24
+
25
+
[shared-buffer](https://connectivecpp.github.io/shared-buffer), header-only C++ 20 reference counted byte buffer classes.
18
26
19
27
## About
20
28
@@ -42,39 +50,41 @@ Principal Author is [Cliff Green](https://github.com/cliffg-softwarelibre).
42
50
43
51
Principal Co-author is [Thurman Gillespy](https://tgill880.github.io).
44
52
45
-
Team Members are [Roxanne Agerone](https://github.com/oxenran), [Nathan Deutsch](https://github.com/n-deutsch), [Casey Ghilardi](https://github.com/Crghilardi), and [Bryan Concari](https://github.com/irql).
53
+
Team Members include [Roxanne Agerone](https://github.com/oxenran), [Nathan Deutsch](https://github.com/n-deutsch), and [Stephen Rogers](https://github.com/srcodes12).
54
+
55
+
Former Team Members include [Casey Ghilardi](https://github.com/Crghilardi), and [Bryan Concari](https://github.com/irql).
46
56
47
57
Logo and banner designed by Ariel Peretz.
48
58
49
59
Contributions have been made by Matthew Earulic, Daniel Muldrew, Bob Higgins, and Matthew Briggs.
50
60
51
61
## Who is Using Connective C++ Software?
52
62
53
-
Chops Net IP is in use at [Sound Life Sciences](https://www.soundlifesci.com/), a Seattle startup creating awesome medical software and devices using high frequency sound to monitor respiration rate. This allows detection of opiod overdose, early signs of infection, and other breathing related disorders.
63
+
Chops Net IP was in use at Sound Life Sciences, a Seattle startup creating medical software and devices using high frequency sound to monitor respiration rate. This allows detection of opiod overdose, early signs of infection, and other breathing related disorders.
54
64
55
65
## C++ Language Requirements and Alternatives
56
66
57
-
C++ 17 is the primary baseline for the Connective C++ projects.
67
+
C++ 20 is the primary baseline for the Connective C++ projects.
58
68
59
69
A significant number of C++ 11 features are in the APIs and implementations. A C++ 03 version will not be provided in any of the Connective C++ repositories.
60
70
61
-
There are numerous C++ 14 and C++ 17 features in use, although many of them could be replaced with Boost (or similar) utilities or rewritten to use only C++ 11 capabilities. For users that don't want to use the latest C++ compilers or compile with C++ 17 flags, Martin Moene provides an excellent set of header-only libraries that implement many useful C++ library features, both C++ 17 as well as future C++ standards (see [References](doc/references.md)).
71
+
There are numerous C++ 14 and C++ 17 features in use and some C++ 20 features, although many of them could be replaced with Boost (or similar) utilities or rewritten to use only C++ 11 (or 14 or 17) capabilities. For users that don't want to use the latest C++ compilers or compile with C++ 20 flags, Martin Moene provides an excellent set of header-only libraries that implement many useful C++ library features (see [References](doc/references.md)).
62
72
63
-
While the main production branch will always be developed and tested with C++ 17 features (and relatively current compilers), alternative branches and forks for older compiler versions may be implemented. Collaboration (through forking, change requests, etc) is very welcome to achieve older compiler conformance.
73
+
While the main production branch will always be developed and tested with C++ 20 features (and relatively current compilers), alternative branches and forks for older compiler versions may be implemented. Collaboration (through forking, change requests, etc) is welcome to achieve older compiler conformance.
64
74
65
75
## References
66
76
67
77
Connective C++ would not be possible without articles, libraries, and code examples from the C++ community. The [References](doc/references.md) page lists the primary influences and library providers on this project.
68
78
69
79
## Team Bios
70
80
71
-
**Cliff Green** (cliffg at connectivecpp dot com) is a software engineer and has worked for many years writing infrastructure libraries and applications for use in networked and distributed systems, typically where high reliability or uptime is required. The domains where he has worked include wireless networks (in particular cellular 9-1-1), location technology, and large scale embedded and simulation systems in the military aerospace industry. He has volunteered many years at [CppCon](https://cppcon.org/) (when it was in Bellevue) and presented at BoostCon (before it was renamed to [C++ Now](http://cppnow.org/)).
81
+
**Cliff Green** (cliffg at connectivecpp dot com) is a software engineer and has worked for many years writing infrastructure libraries and applications for use in networked and distributed systems, typically where high reliability or uptime is required. The domains where he has worked include wireless networks (in particular cellular 9-1-1), location technology, and large scale embedded and simulation systems in the military aerospace industry. He has volunteered many years at [CppCon](https://cppcon.org/) (when it was in Bellevue, Washington) and presented at BoostCon (before it was renamed to [C++ Now](http://cppnow.org/)).
72
82
73
-
Cliff lives in the Seattle area and you may know him from other interests including volleyball, hiking, railroading (both the model variety and the real life big ones), music, or even parent support activities (if you are having major difficulties with your teen check out the [Changes Parent Support Network](http://cpsn.org)).
83
+
Cliff previously lived in the Seattle area and you may know him from other interests including volleyball, hiking, railroading (both the model variety and the real life big ones), music, or even parent support activities (if you are having major difficulties with your teen check out the [Changes Parent Support Network](http://cpsn.org)). He now lives in Placitas, New Mexico (15 miles north of Albuquerque).
74
84
75
85
**Thurman Gillespy** ([GitHub site](https://tgill880.github.io/), thurmang at connectivecpp dot com) is a software engineer although his first career was in diagnostic radiology, with stints at the University of Florida (1985 - 1990), University of Washington (1990 - 2008) and private practice in Seattle (2008 - 2015). In the 1990's, Thurman wrote Dr Razz, the first application that could display and manipulate radiology images on a Macintosh computer. In 2015 Thurman left medicine and went back to school to transform a life long hobby of programming into a second career as a software developer.
76
86
77
-
**Roxanne Agerone** ([GitHub site](https://github.com/oxenran), roxanne at connectivecpp dot com) is a software engineer working in the Seattle area and loves classic cars (among other interests). She created the [Seattle C++ Meetup](https://www.meetup.com/Seattle-C-Meetup), typically meeting on Monday evenings, 6 pm, at Ballard Coffee Works, 2060 NW Market Street, Seattle.
87
+
**Roxanne Agerone** ([GitHub site](https://github.com/RAgerone), roxanne at connectivecpp dot com) is a software engineer working in the Seattle area and loves classic cars (among other interests). She created the [Seattle C++ Meetup](https://www.meetup.com/Seattle-C-Meetup).
78
88
79
89
**Nathan Deutsch** ([personal website](http://www.nathandeutsch.com), nathand at connectivecpp dot com) is a software engineer working in Bellevue, Washington. He likes to study and play jazz guitar and go camping. He also claims to be the best pool player in the state, accepting all challengers (if you think you're good enough, contact him!).
Copy file name to clipboardExpand all lines: doc/references.md
+9-7Lines changed: 9 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,11 +2,13 @@
2
2
3
3
## Networking and Asynchronous Design
4
4
5
-
- Chris Kohlhoff is a networking expert (among other expertises, including C++), creator of the Asio library and initial author of the C++ Networking Technical Standard (TS). Asio is [available here](https://think-async.com/) as well as at Chris' [GitHub site](https://github.com/chriskohlhoff/). Asio forms the basis for the C++ Networking Technical Standard (TS), which will be standardized in C++ 23 or C++ 26 (or thereabouts). Currently the Chops Net IP library uses the stand-alone Asio repository from Chris' GitHub account.
5
+
- Chris Kohlhoff is a networking expert (among other expertises including C++ and a major contributor to the C++ executors proposals), creator of the Asio library and initial author of the C++ Networking Technical Standard (TS). Asio is [available here](https://think-async.com/) as well as at Chris' [GitHub site](https://github.com/chriskohlhoff/). Asio is a major basis and inspiration for possible future C++ networking standardization. Currently the Chops Net IP library uses the stand-alone Asio repository from Chris' GitHub account.
6
6
7
-
- Vinnie Falco is the author of the Boost Beast library, available at [Boost.org](https://www.boost.org/). Beast is an excellent building block library for asynchronous (and synchronous) HTTP and WebSocket applications. The Beast library uses Asio. Vinnie is proficient in C++ including presenting at [CppCon](https://cppcon.org/) and is also active in blockchain development and other technology areas. Vinnie has a [GitHub site](https://github.com/vinniefalco). While Chops Net IP does not depend on Beast, the choices and design rationale made by Vinnie in implementing Beast are highly helpful.
7
+
- Vinnie Falco is the author of the Boost Beast library, available at [Boost.org](https://www.boost.io/). Beast is an excellent building block library for asynchronous (and synchronous) HTTP and WebSocket applications. The Beast library uses Asio. Vinnie is proficient in C++ including presenting at [CppCon](https://cppcon.org/) and is also active in blockchain development and other technology areas. Vinnie has a [GitHub site](https://github.com/vinniefalco). While Chops Net IP does not depend on Beast, the choices and design rationale made by Vinnie in implementing Beast are highly helpful.
8
8
9
-
- Kirk Shoop is a C++ expert, particularly in the area of asynchronous design, and has presented multiple times at [CppCon](https://cppcon.org/). He is a co-author of the [Unified Executors Proposal for C++](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p0443r12.html) and has a [GitHub site](https://github.com/kirkshoop).
9
+
- Kirk Shoop is a C++ expert, particularly in the area of asynchronous design, and has presented multiple times at [CppCon](https://cppcon.org/). He is a co-author of the [`std::execution` Proposal for C++](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/p2300r10.html) and has a [GitHub site](https://github.com/kirkshoop).
- Richard Hodges is a prolific C++ expert with over 1,900 answers on StackOverflow as well as numerous discussions relating to C++ standardization and has a [GitHub site](https://github.com/madmongo1).
28
30
29
-
- Vittorio Romeo is a blog author and C++ expert with a [web site](https://vittorioromeo.info/) and a [GitHub site](https://github.com/SuperV1234). Vittorio's blog is excellent and well worth reading.
31
+
- Vittorio Romeo is a blog author and C++ expert with a [web site](https://vittorioromeo.info/) and a [GitHub site](https://github.com/vittorioromeo). Vittorio's blog is excellent and well worth reading.
30
32
31
33
- Blitz Rakete is a student software developer who has the user id of Rakete1111 on many forums and sites (including Stackoverflow) and has a [GitHub site](https://github.com/Rakete1111).
32
34
@@ -45,14 +47,14 @@
45
47
46
48
## Unit Testing
47
49
48
-
- Phil Nash is the author of the Catch C++ unit testing library. The Catch library is [available here](https://github.com/catchorg/Catch2).
50
+
- Phil Nash is the original author of the Catch C++ unit testing library, but other maintainers have taken over and made significant updates. The Catch library is [available here](https://github.com/catchorg/Catch2).
49
51
50
52
## Documentation
51
53
52
-
- Sy Brand's [article on writing clear documentation](https://devblogs.microsoft.com/cppblog/clear-functional-c-documentation-with-sphinx-breathe-doxygen-cmake/) has been invaluable. In addition, Sy is a well known C++ expert and presenter, known as TartanLLama, and his blog is [available here](https://blog.tartanllama.xyz).
54
+
- Sy Brand's [article on writing clear documentation](https://devblogs.microsoft.com/cppblog/clear-functional-c-documentation-with-sphinx-breathe-doxygen-cmake/) has been invaluable. In addition, Sy is a well known C++ expert and presenter, known as TartanLLama, and Sy's blog is [available here](https://blog.tartanllama.xyz).
53
55
54
56
- Diagrams in the Connective C++ documentation are created using [draw.io](https://www.draw.io/).
55
57
56
58
## Boost
57
59
58
-
- The Boost libraries collection is a high quality set of C++ libraries, [available here](https://www.boost.org/).
60
+
- The Boost libraries collection is a high quality set of C++ libraries, [available here](https://www.boost.io/).
0 commit comments