From 62ef44164c5ddfe30a35637d9e46884a683fb7b2 Mon Sep 17 00:00:00 2001 From: Geert Jan Bex Date: Wed, 28 Feb 2024 08:31:30 +0100 Subject: [PATCH 01/12] Add code of conduct --- code_of_conduct.md | 56 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 code_of_conduct.md diff --git a/code_of_conduct.md b/code_of_conduct.md new file mode 100644 index 0000000..beb56d7 --- /dev/null +++ b/code_of_conduct.md @@ -0,0 +1,56 @@ +--- +layout: page +title: Code of conduct +permalink: /code_of_conduct.html +--- + +# Code of conduct + +This workshop is dedicated to providing a welcoming and supportive environment for all people, regardless of background or identity. By participating in this workshop, participants accept to abide by this Code of Conduct and accept the procedures by which any Code of Conduct incidents are resolved. We do not tolerate behavior that is disrespectful or that excludes, intimidates, or causes discomfort to others. We do not tolerate discrimination or harassment based on characteristics that include, but are not limited to, gender identity and expression, sexual orientation, disability, physical appearance, body size, citizenship, nationality, ethnic or social origin, pregnancy, familial status, veteran status, genetic information, religion or belief (or lack thereof), membership of a national minority, property, age, education, socio-economic status, technical choices, and experience level. + +Everyone who participates in workshop activities is required to conform to this Code of Conduct. It applies to all spaces managed by or affiliated with the workshop, including, but not limited to, workshops, email lists, and online forums such as GitHub, Slack and Twitter. Workshop hosts are expected to assist with the enforcement of the Code of Conduct. By participating, participants indicate their acceptance of the procedures by which the workshop resolves any Code of Conduct incidents, which may include storage and processing of their personal information. + + +## Expected behavior + +All participants in our events and communications are expected to show respect and courtesy to others. All interactions should be professional regardless of platform: either online or in-person. In order to foster a positive and professional learning environment we encourage the following kinds of behaviors in all workshop events and platforms: + +* Use welcoming and inclusive language +* Be respectful of different viewpoints and experiences +* Gracefully accept constructive criticism +* Focus on what is best for the community +* Show courtesy and respect towards other community members + + +## Unacceptable behavior + +Examples of unacceptable behavior by participants at any workshop event/platform include: + +* written or verbal comments which have the effect of excluding people on the basis of membership of any specific group +* causing someone to fear for their safety, such as through stalking, following, or intimidation +* violent threats or language directed against another person +* the display of sexual or violent images +* unwelcome sexual attention +* nonconsensual or unwelcome physical contact +* sustained disruption of talks, events or communications +* insults or put downs +* sexist, racist, homophobic, transphobic, ableist, or exclusionary jokes +* excessive swearing +* incitement to violence, suicide, or self-harm +* continuing to initiate interaction (including photography or recording) with someone after being asked to stop +* publication of private communication without consent +* sharing recordings of training sessions with non-participants + + +## Consequences of Unacceptable behavior + +If you believe someone is violating the Code of Conduct, we ask that you report it to any of the workshop organizers. This is a community-led workshop, and we value the involvement of everyone in the community. We are committed to creating a friendly and respectful place for learning, teaching and contributing. All participants in our events and communications are expected to show respect and courtesy to others. + +To make clear what is expected, everyone participating in this conference and its activities is required to conform to the Code of Conduct. This Code of Conduct applies to all spaces affiliated with the conference, but not limited to, workshops, email lists, and online forums such as GitHub, Slack and Twitter. Workshop organizers are expected to assist with the enforcement of the Code of Conduct. + +Participants who are asked to stop any inappropriate behavior are expected to comply immediately. This applies to any workshop events and platforms, either online or in-person. If a participant engages in behavior that violates this code of conduct, the organizers may warn the offender, ask them to leave the event or platform, or investigate the Code of Conduct violation and impose appropriate sanctions. + + +## Attribution + +This code of conduct is largely mirrored from the one used by [ML4Science](https://www.ml4science.org/code-of-conduct) that in turn modelled it on the [Software Carpentry's code of conduct](https://www.google.com/url?q=https%3A%2F%2Fdocs.carpentries.org%2Ftopic_folders%2Fpolicies%2Fcode-of-conduct.html&sa=D&sntz=1&usg=AOvVaw3u6XY-Uib9k9m6Y7uxovay). From ef1f0480d0304f3e61e2eff21473854aa069ebc2 Mon Sep 17 00:00:00 2001 From: Geert Jan Bex Date: Thu, 29 Feb 2024 07:36:27 +0100 Subject: [PATCH 02/12] Add illustration of using const with pointers --- source-code/Pointers/CMakeLists.txt | 2 ++ source-code/Pointers/README.md | 2 ++ source-code/Pointers/const_and_pointers.cpp | 31 +++++++++++++++++++++ 3 files changed, 35 insertions(+) create mode 100644 source-code/Pointers/const_and_pointers.cpp diff --git a/source-code/Pointers/CMakeLists.txt b/source-code/Pointers/CMakeLists.txt index 7370fca..661162b 100644 --- a/source-code/Pointers/CMakeLists.txt +++ b/source-code/Pointers/CMakeLists.txt @@ -11,3 +11,5 @@ add_executable(runtime_vs_compile_time.exe runtime_vs_compile_time.cpp) add_executable(pointers_vs_references.exe pointers_vs_references.cpp) +add_executable(const_and_pointers.exe + const_and_pointers.cpp) diff --git a/source-code/Pointers/README.md b/source-code/Pointers/README.md index 0901218..eab06b0 100644 --- a/source-code/Pointers/README.md +++ b/source-code/Pointers/README.md @@ -10,5 +10,7 @@ Some illustrations of using pointers in C++. a pointer of the parent class. * `pointers_vs_references.cpp`: illustration of the difference between pointers and references. +* `const_and_pointers.cpp`: illustration of the use of `const` with + pointers. * `CMakeLists.txt`: CMake file to build the applications. * `SharedPointers`: illustration of using shared pointers. diff --git a/source-code/Pointers/const_and_pointers.cpp b/source-code/Pointers/const_and_pointers.cpp new file mode 100644 index 0000000..42cc8d1 --- /dev/null +++ b/source-code/Pointers/const_and_pointers.cpp @@ -0,0 +1,31 @@ +#include + +int main() { + int x {5}; + int y {-1}; + int* p1 {&x}; + std::cout << "*p1 = " << *p1 << "\n"; + *p1 = 10; + std::cout << "*p1 = " << *p1 << "\n"; + p1 = &y; + std::cout << "*p1 = " << *p1 << "\n"; + + const int* p2 {&x}; + // *p2 = 20; // error: assignment of read-only location ‘*p2’ + std::cout << "*p2 = " << *p2 << "\n"; + p2 = &y; + std::cout << "*p2 = " << *p2 << "\n"; + + int* const p3 {&x}; + std::cout << "*p3 = " << *p3 << "\n"; + *p3 = 30; + std::cout << "*p3 = " << *p3 << "\n"; + // p3 = &y; // error: assignment of read-only variable ‘p3’ + + const int* const p4 {&x}; + std::cout << "*p4 = " << *p4 << "\n"; + // *p4 = 40; // error: assignment of read-only location ‘*p4’ + // p4 = &y; // error: assignment of read-only variable ‘p4’ + + return 0; +} From 0073f6e240b6d439b2057154a6468315950dda5d Mon Sep 17 00:00:00 2001 From: Geert Jan Bex Date: Thu, 29 Feb 2024 07:04:01 +0100 Subject: [PATCH 03/12] Switch to universal initializer --- source-code/Pointers/pointers_vs_references.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source-code/Pointers/pointers_vs_references.cpp b/source-code/Pointers/pointers_vs_references.cpp index 42f00a8..651b3c6 100644 --- a/source-code/Pointers/pointers_vs_references.cpp +++ b/source-code/Pointers/pointers_vs_references.cpp @@ -2,12 +2,12 @@ int main() { int a {5}; - int& b = a; + int& b {a}; std::cout << "&a = " << &a << ", &b = " << &b << "\n"; std::cout << "a = " << a << ", b = " << b << "\n"; b = 3; std::cout << "a = " << a << ", b = " << b << " after b = 3\n"; - int* p = &a; + int* p {&a}; std::cout << "&a = " << &a << ", p = " << p << ", &p = " << &p << "\n"; std::cout << "a = " << a << ", *p = " << *p << "\n"; *p = 9; From 403912198c888d62cc0c34594ff1a389ea16b04b Mon Sep 17 00:00:00 2001 From: Geert Jan Bex Date: Thu, 29 Feb 2024 08:00:23 +0100 Subject: [PATCH 04/12] Add function declaration --- scientific_cpp.pptx | Bin 1030240 -> 1030270 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/scientific_cpp.pptx b/scientific_cpp.pptx index 6b6d34101c354ae14151716e7d8b5fba0300a922..ddf78eb3ec043d2a7c8a18dc4ebc4e196a6e9c89 100644 GIT binary patch delta 20303 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 Vu^tr3kVZX<2S1Gs+-{5Y{{RD{VhsQQ From 40bbfd0fd90615523d250d5c1dfce3d692997777 Mon Sep 17 00:00:00 2001 From: Geert Jan Bex Date: Thu, 29 Feb 2024 13:07:51 +0100 Subject: [PATCH 05/12] Extend concepts example --- source-code/Templates/Concepts/CMakeLists.txt | 10 ++++++++++ source-code/Templates/Concepts/README.md | 1 + source-code/Templates/Concepts/main.cpp | 7 +++++-- 3 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 source-code/Templates/Concepts/CMakeLists.txt diff --git a/source-code/Templates/Concepts/CMakeLists.txt b/source-code/Templates/Concepts/CMakeLists.txt new file mode 100644 index 0000000..68ce12c --- /dev/null +++ b/source-code/Templates/Concepts/CMakeLists.txt @@ -0,0 +1,10 @@ +cmake_minimum_required(VERSION 3.20) +project(grids LANGUAGES CXX) + +set(CMAKE_CXX_STANDARD 23) +set(CMaKE_CXX_STANDARD_REQUIRED YES) +set(CMAKE_CXX_EXTENSIONS NO) + +add_compile_options(-Wall -Wextra -Wpedantic) + +add_executable(iterable.exe main.cpp) diff --git a/source-code/Templates/Concepts/README.md b/source-code/Templates/Concepts/README.md index 073c531..a470abf 100644 --- a/source-code/Templates/Concepts/README.md +++ b/source-code/Templates/Concepts/README.md @@ -10,3 +10,4 @@ types. 1. `iterable.h`: defintion of the iterable concept. 1. `main.cpp`: application that will fail to compile because the template constraints are not satisfied. +1. `CMakeLists.txt`: CMake file to build the applications. diff --git a/source-code/Templates/Concepts/main.cpp b/source-code/Templates/Concepts/main.cpp index ebad1b0..d8d9141 100644 --- a/source-code/Templates/Concepts/main.cpp +++ b/source-code/Templates/Concepts/main.cpp @@ -15,7 +15,10 @@ int main() { static_assert(Iterable>, "vector is iterable"); print(std::vector{1, 2, 3, 4, 5}); static_assert(Iterable>); - static_assert(Iterable); - print({1, 2, 3, 4, 5}); + float data[] = {1, 2, 3, 4, 5}; + std::span s{data}; + print(s); + // static_assert(Iterable); // error: float[] is not an iterable + // print({1, 2, 3, 4, 5}); // float[] is not an iterable return 0; } From 3d078f48fa949b4eba74c4a71f6e00d7e50c5ba2 Mon Sep 17 00:00:00 2001 From: Geert Jan Bex Date: Thu, 29 Feb 2024 13:50:10 +0100 Subject: [PATCH 06/12] Move STL general utilities examples moved to own directory --- source-code/C++17/Makefile | 2 +- source-code/C++17/README.md | 2 -- source-code/GeneralUtilities/CMakeLists.txt | 10 ++++++++++ source-code/GeneralUtilities/README.md | 7 +++++++ source-code/{C++17 => GeneralUtilities}/optional.cpp | 0 .../{C++17 => GeneralUtilities}/variant_visit.cpp | 0 source-code/README.md | 1 + source-code/Templates/Concepts/main.cpp | 10 ++++++++++ 8 files changed, 29 insertions(+), 3 deletions(-) create mode 100644 source-code/GeneralUtilities/CMakeLists.txt create mode 100644 source-code/GeneralUtilities/README.md rename source-code/{C++17 => GeneralUtilities}/optional.cpp (100%) rename source-code/{C++17 => GeneralUtilities}/variant_visit.cpp (100%) diff --git a/source-code/C++17/Makefile b/source-code/C++17/Makefile index d2c3c86..9fb93cc 100644 --- a/source-code/C++17/Makefile +++ b/source-code/C++17/Makefile @@ -1,7 +1,7 @@ CXX = g++ CXXFLAGS = -std=c++17 -O2 -g -Wall -Wextra -Wpedantic -all: if_init.exe optional.exe structured_bindings.exe variant_visit.exe +all: if_init.exe structured_bindings.exe %.exe: %.o $(CXX) $(CXXFLAGS) -o $@ $^ diff --git a/source-code/C++17/README.md b/source-code/C++17/README.md index 65e0e0e..4cec2fb 100644 --- a/source-code/C++17/README.md +++ b/source-code/C++17/README.md @@ -3,8 +3,6 @@ A few illustrations of features added in the C++17 standard. ## What is it? 1. `if_init.cpp`: variable defition in `if`-statment. -1. `optional.cpp`: illustrations the use of `std::optional`. 1. `structured_bindings.cpp`: illustrates structured binding of a `struct` to individual variables. -1. `variant_visit.cpp`: illustration of how to use `std::variant` and `std::visit`. 1. `Makefile`: make file to build the applications. diff --git a/source-code/GeneralUtilities/CMakeLists.txt b/source-code/GeneralUtilities/CMakeLists.txt new file mode 100644 index 0000000..e1ed872 --- /dev/null +++ b/source-code/GeneralUtilities/CMakeLists.txt @@ -0,0 +1,10 @@ +cmake_minimum_required(VERSION 3.20) + +project(general_utilities LANGUAGES CXX) + +set(CMAKE_CXX_STANDARD 23) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_CXX_EXTENSIONS OFF) + +add_executable(optional.exe optional.cpp) +add_executable(variant_visit.exe variant_visit.cpp) diff --git a/source-code/GeneralUtilities/README.md b/source-code/GeneralUtilities/README.md new file mode 100644 index 0000000..3f25986 --- /dev/null +++ b/source-code/GeneralUtilities/README.md @@ -0,0 +1,7 @@ +# General utilities +A few illustrations of features in the general utilities STL. + +## What is it? +1. `optional.cpp`: illustrations the use of `std::optional`. +1. `variant_visit.cpp`: illustration of how to use `std::variant` and `std::visit`. +1. `CMakeLists.txt`: CMake file to build the applications. diff --git a/source-code/C++17/optional.cpp b/source-code/GeneralUtilities/optional.cpp similarity index 100% rename from source-code/C++17/optional.cpp rename to source-code/GeneralUtilities/optional.cpp diff --git a/source-code/C++17/variant_visit.cpp b/source-code/GeneralUtilities/variant_visit.cpp similarity index 100% rename from source-code/C++17/variant_visit.cpp rename to source-code/GeneralUtilities/variant_visit.cpp diff --git a/source-code/README.md b/source-code/README.md index 73df7af..c6a7df8 100644 --- a/source-code/README.md +++ b/source-code/README.md @@ -47,3 +47,4 @@ programming concepts and idiosyncracies particular to C++. 1. `ParallelExecution`: illustration of parallelizing algorithms using execution policies and TBB. 1. `Cling`: Xeus-cling kernel in Jupyter Lab for interactive C++ development. +1. `GeneralUtilities`: examples of using STL general utilities. diff --git a/source-code/Templates/Concepts/main.cpp b/source-code/Templates/Concepts/main.cpp index d8d9141..4962eff 100644 --- a/source-code/Templates/Concepts/main.cpp +++ b/source-code/Templates/Concepts/main.cpp @@ -11,13 +11,23 @@ requires Iterable void print(T t) { std::cout << std::endl; } +template +void print2(T t) { + for (auto i : t) { + std::cout << i << " "; + } + std::cout << std::endl; +} + int main() { static_assert(Iterable>, "vector is iterable"); print(std::vector{1, 2, 3, 4, 5}); + print2(std::vector{1, 2, 3, 4, 5}); static_assert(Iterable>); float data[] = {1, 2, 3, 4, 5}; std::span s{data}; print(s); + print2(s); // static_assert(Iterable); // error: float[] is not an iterable // print({1, 2, 3, 4, 5}); // float[] is not an iterable return 0; From e29919712ea90edbe1506bf72e4c564591c0af37 Mon Sep 17 00:00:00 2001 From: Geert Jan Bex Date: Thu, 29 Feb 2024 13:56:49 +0100 Subject: [PATCH 07/12] Move recent grammar additions examples into own directory --- source-code/C++17/README.md | 8 -------- source-code/{C++17 => GrammarFeatures}/.gitignore | 0 source-code/{C++17 => GrammarFeatures}/Makefile | 0 source-code/GrammarFeatures/README.md | 8 ++++++++ source-code/{C++17 => GrammarFeatures}/if_init.cpp | 0 .../{C++17 => GrammarFeatures}/structured_bindings.cpp | 0 source-code/README.md | 3 ++- 7 files changed, 10 insertions(+), 9 deletions(-) delete mode 100644 source-code/C++17/README.md rename source-code/{C++17 => GrammarFeatures}/.gitignore (100%) rename source-code/{C++17 => GrammarFeatures}/Makefile (100%) create mode 100644 source-code/GrammarFeatures/README.md rename source-code/{C++17 => GrammarFeatures}/if_init.cpp (100%) rename source-code/{C++17 => GrammarFeatures}/structured_bindings.cpp (100%) diff --git a/source-code/C++17/README.md b/source-code/C++17/README.md deleted file mode 100644 index 4cec2fb..0000000 --- a/source-code/C++17/README.md +++ /dev/null @@ -1,8 +0,0 @@ -# C++17 -A few illustrations of features added in the C++17 standard. - -## What is it? -1. `if_init.cpp`: variable defition in `if`-statment. -1. `structured_bindings.cpp`: illustrates structured binding of a - `struct` to individual variables. -1. `Makefile`: make file to build the applications. diff --git a/source-code/C++17/.gitignore b/source-code/GrammarFeatures/.gitignore similarity index 100% rename from source-code/C++17/.gitignore rename to source-code/GrammarFeatures/.gitignore diff --git a/source-code/C++17/Makefile b/source-code/GrammarFeatures/Makefile similarity index 100% rename from source-code/C++17/Makefile rename to source-code/GrammarFeatures/Makefile diff --git a/source-code/GrammarFeatures/README.md b/source-code/GrammarFeatures/README.md new file mode 100644 index 0000000..4a082f9 --- /dev/null +++ b/source-code/GrammarFeatures/README.md @@ -0,0 +1,8 @@ +# Grammar features +A few illustrations of grammar features added in recent C++ standards. + +## What is it? +1. `if_init.cpp`: variable defition in `if`-statment (C++17). +1. `structured_bindings.cpp`: illustrates structured binding of a + `struct` to individual variables (C++17). +1. `Makefile`: make file to build the applications. diff --git a/source-code/C++17/if_init.cpp b/source-code/GrammarFeatures/if_init.cpp similarity index 100% rename from source-code/C++17/if_init.cpp rename to source-code/GrammarFeatures/if_init.cpp diff --git a/source-code/C++17/structured_bindings.cpp b/source-code/GrammarFeatures/structured_bindings.cpp similarity index 100% rename from source-code/C++17/structured_bindings.cpp rename to source-code/GrammarFeatures/structured_bindings.cpp diff --git a/source-code/README.md b/source-code/README.md index c6a7df8..575b606 100644 --- a/source-code/README.md +++ b/source-code/README.md @@ -33,7 +33,8 @@ programming concepts and idiosyncracies particular to C++. 1. `Boost`: some illustrations of using the Boost C++ library, mostly in the context of numerical programming. 1. `UsingCLibraries`: illustration of how to use a C library from C++ code. -1. `C++17`: illustrations of features added in the C++17 standard +1. `GrammarFeatures`: illustrations of recent C++ grammar features added in + recent C++ standarsd specification. 1. `Ranges`: ranges are an interesting concept for working more conveniently with STL containers and composing algorithms. From 66a87fc8ce92464d10c552a5d560937f0a80d082 Mon Sep 17 00:00:00 2001 From: Geert Jan Bex Date: Fri, 1 Mar 2024 13:06:14 +0100 Subject: [PATCH 08/12] Fix terminology Replace class attribute/method by object attribute/method --- scientific_cpp.pptx | Bin 1030270 -> 1029073 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/scientific_cpp.pptx b/scientific_cpp.pptx index ddf78eb3ec043d2a7c8a18dc4ebc4e196a6e9c89..ce298b5d2a0f533efc99909d843e56bab1be5b70 100644 GIT binary patch delta 138763 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

{h`)gzyI8 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%0A)!|7S;3ieC}; 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 eXjC~^^}&{w04xjO{uYWDRh$4y%?a)! Date: Wed, 6 Mar 2024 07:58:54 +0100 Subject: [PATCH 09/12] Move error handling examples into own directory --- .../{Modularity => ErrorHandling}/Makefile | 2 +- source-code/ErrorHandling/MemoryLeak/Makefile | 15 +++++++++++++++ source-code/ErrorHandling/MemoryLeak/README.md | 15 +++++++++++++++ .../MemoryLeak}/memory_leak.cpp | 0 .../MemoryLeak}/memory_leak_fixed.cpp | 0 source-code/ErrorHandling/README.md | 8 ++++++++ source-code/{Modularity => ErrorHandling}/fac.cpp | 0 source-code/Modularity/README.md | 10 ---------- source-code/README.md | 1 + 9 files changed, 40 insertions(+), 11 deletions(-) rename source-code/{Modularity => ErrorHandling}/Makefile (82%) create mode 100644 source-code/ErrorHandling/MemoryLeak/Makefile create mode 100644 source-code/ErrorHandling/MemoryLeak/README.md rename source-code/{Modularity => ErrorHandling/MemoryLeak}/memory_leak.cpp (100%) rename source-code/{Modularity => ErrorHandling/MemoryLeak}/memory_leak_fixed.cpp (100%) create mode 100644 source-code/ErrorHandling/README.md rename source-code/{Modularity => ErrorHandling}/fac.cpp (100%) diff --git a/source-code/Modularity/Makefile b/source-code/ErrorHandling/Makefile similarity index 82% rename from source-code/Modularity/Makefile rename to source-code/ErrorHandling/Makefile index 8deca18..7e10d4b 100644 --- a/source-code/Modularity/Makefile +++ b/source-code/ErrorHandling/Makefile @@ -2,7 +2,7 @@ CXX = g++ CXXFLAGS = -std=c++14 -g -O2 -Wall -Wextra LDLIBS = -lm -all: fac.exe memory_leak.exe memory_leak_fixed.exe +all: fac.exe %.exe: %.o $(CXX) $(CXXFLAGS) -o $@ $< $(LDLIBS) diff --git a/source-code/ErrorHandling/MemoryLeak/Makefile b/source-code/ErrorHandling/MemoryLeak/Makefile new file mode 100644 index 0000000..c33fdea --- /dev/null +++ b/source-code/ErrorHandling/MemoryLeak/Makefile @@ -0,0 +1,15 @@ +CXX = g++ +CXXFLAGS = -std=c++14 -g -O2 -Wall -Wextra +LDLIBS = -lm + +all: memory_leak.exe memory_leak_fixed.exe + +%.exe: %.o + $(CXX) $(CXXFLAGS) -o $@ $< $(LDLIBS) + +%.o: %.cpp + $(CXX) $(CXXFLAGS) -c -o $@ $< + +clean: + $(RM) $(wildcard *.exe) $(wildcard *.o) + $(RM) core $(wildcard core.) diff --git a/source-code/ErrorHandling/MemoryLeak/README.md b/source-code/ErrorHandling/MemoryLeak/README.md new file mode 100644 index 0000000..87087d5 --- /dev/null +++ b/source-code/ErrorHandling/MemoryLeak/README.md @@ -0,0 +1,15 @@ +# Memory leak + +Code illustrating a memory leak created by inappropriate exception +handling. + +# What is it? +1. `memory_leak.cpp`: illustration of a memory leak caused by bad exception + handling. +1. `memory_leak_fixed.cpp`: illustrates using RAII to ensure correct resource + management. +1. `Makefile`: make file for these examples. + +## How to use it? +Run `memory_leak.exe` and `memory_leak_fixed.exe` through valgrind with -1 and 5 +as arguments and note the difference. diff --git a/source-code/Modularity/memory_leak.cpp b/source-code/ErrorHandling/MemoryLeak/memory_leak.cpp similarity index 100% rename from source-code/Modularity/memory_leak.cpp rename to source-code/ErrorHandling/MemoryLeak/memory_leak.cpp diff --git a/source-code/Modularity/memory_leak_fixed.cpp b/source-code/ErrorHandling/MemoryLeak/memory_leak_fixed.cpp similarity index 100% rename from source-code/Modularity/memory_leak_fixed.cpp rename to source-code/ErrorHandling/MemoryLeak/memory_leak_fixed.cpp diff --git a/source-code/ErrorHandling/README.md b/source-code/ErrorHandling/README.md new file mode 100644 index 0000000..bab0e79 --- /dev/null +++ b/source-code/ErrorHandling/README.md @@ -0,0 +1,8 @@ +# Error handling + +Code illustrations for chapter 3, Modularity in Stroustrup's +"A tour of C++" on error handling using exceptions. + +# What is it? +1. `fac.cpp`: illustrates exception handling. +1. `Makefile`: make file for these examples. diff --git a/source-code/Modularity/fac.cpp b/source-code/ErrorHandling/fac.cpp similarity index 100% rename from source-code/Modularity/fac.cpp rename to source-code/ErrorHandling/fac.cpp diff --git a/source-code/Modularity/README.md b/source-code/Modularity/README.md index ee5a44f..4471c5b 100644 --- a/source-code/Modularity/README.md +++ b/source-code/Modularity/README.md @@ -7,13 +7,3 @@ Code illustrations for chapter 3, Modularity in Stroustrup's 1. `Particles`: example of separate compilation. 1. `ParticlesCMake`: example of build using CMake. 1. `Stats`: example of separate compilation. -1. `fac.cpp`: illustrates exception handling. -1. `memory_leak.cpp`: illustration of a memory leak caused by bad exception - handling. -1. `memory_leak_fixed.cpp`: illustrates using RAII to ensure correct resource - management. -1. `Makefile`: make file for these examples. - -## How to use it? -Run `memory_leak.exe` and `memory_leak_fixed.exe` through valgrind with -1 and 5 -as arguments and note the difference. diff --git a/source-code/README.md b/source-code/README.md index 575b606..a8d9f2a 100644 --- a/source-code/README.md +++ b/source-code/README.md @@ -49,3 +49,4 @@ programming concepts and idiosyncracies particular to C++. execution policies and TBB. 1. `Cling`: Xeus-cling kernel in Jupyter Lab for interactive C++ development. 1. `GeneralUtilities`: examples of using STL general utilities. +1. `ErrorHandling`: examples of error handling. From 3028fb5b9f8b0f4ddb77ecec5653cfb5b67e14e0 Mon Sep 17 00:00:00 2001 From: Geert Jan Bex Date: Wed, 6 Mar 2024 13:18:39 +0100 Subject: [PATCH 10/12] Fix typos --- scientific_cpp.pptx | Bin 1029073 -> 1029115 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/scientific_cpp.pptx b/scientific_cpp.pptx index ce298b5d2a0f533efc99909d843e56bab1be5b70..eba8d4657245a4b464511f046e6a5aebe9ad6a16 100644 GIT binary patch delta 20959 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 From e766d9c151155ed557b60d1f0374c7557e0e88a1 Mon Sep 17 00:00:00 2001 From: Geert Jan Bex Date: Wed, 6 Mar 2024 17:37:19 +0100 Subject: [PATCH 11/12] Add example of error handling with std::expected --- .../ErrorHandling/Expected/CMakeLists.txt | 9 +++ source-code/ErrorHandling/Expected/README.md | 11 +++ source-code/ErrorHandling/Expected/fac.cpp | 70 +++++++++++++++++++ source-code/ErrorHandling/README.md | 3 + 4 files changed, 93 insertions(+) create mode 100644 source-code/ErrorHandling/Expected/CMakeLists.txt create mode 100644 source-code/ErrorHandling/Expected/README.md create mode 100644 source-code/ErrorHandling/Expected/fac.cpp diff --git a/source-code/ErrorHandling/Expected/CMakeLists.txt b/source-code/ErrorHandling/Expected/CMakeLists.txt new file mode 100644 index 0000000..8771628 --- /dev/null +++ b/source-code/ErrorHandling/Expected/CMakeLists.txt @@ -0,0 +1,9 @@ +cmake_minimum_required(VERSION 3.20) + +project(expected LANGUAGES CXX) + +set(CMAKE_CXX_STANDARD 23) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_CXX_EXTENSIONS OFF) + +add_executable(fac.exe fac.cpp) diff --git a/source-code/ErrorHandling/Expected/README.md b/source-code/ErrorHandling/Expected/README.md new file mode 100644 index 0000000..2d3b996 --- /dev/null +++ b/source-code/ErrorHandling/Expected/README.md @@ -0,0 +1,11 @@ +# Expected + +Illustrates how to use `std::expected` for error handling, showcasing the +monadic interface (slightly over the top). + +## What is it? + +1. `fac.cpp`: C++ application that reads an argument from the command line, + validates the value, computes the factorial and displays the output or + the error message. +1. `CMakeLists.txt`: CMake file to build the applications. diff --git a/source-code/ErrorHandling/Expected/fac.cpp b/source-code/ErrorHandling/Expected/fac.cpp new file mode 100644 index 0000000..ff29bce --- /dev/null +++ b/source-code/ErrorHandling/Expected/fac.cpp @@ -0,0 +1,70 @@ +#include +#include +#include +#include + +using ErrorResult = std::string; +using ParseResult = std::string; + +std::expected parse_arguments(int argc, char* argv[]) { + std::string app_name {argv[0]}; + if (argc != 2) { + return std::unexpected(app_name + " takes 1 argument"); + } + return ErrorResult(argv[1]); +} + +using ValidateResult = int; + +std::expected validate_arguments(const ParseResult& arg) { + try { + return ValidateResult(std::stoi(arg)); + } catch (const std::invalid_argument& e) { + return std::unexpected("can not convert '" + arg + "' to an integer"); + } catch (const std::out_of_range& e) { + return std::unexpected(arg + " is too large to convert to an integer"); + } +} + +using FunctionResult = int; + +std::expected fac(ValidateResult n) { + if (n < 0) { + return std::unexpected("fac argument " + std::to_string(n) + ", must be positive"); + } else { + const int max_int {std::numeric_limits::max()}; + int result = 1; + for (int i = 2; i <= n; i++) { + if (result < max_int/i) { + result *= i; + } else { + return std::unexpected("fac argument " + std::to_string(n) + " causes overflow"); + } + } + return FunctionResult(result); + } +} + +std::expected show_result(FunctionResult result) { + std::cout << result << std::endl; + return result; +} + +std::expected show_error(const ErrorResult& error) { + std::cerr << "# error: " << error << std::endl; + return std::unexpected(error); +} + +int main(int argc, char *argv[]) { + auto result = parse_arguments(argc, argv) + .and_then(validate_arguments) + .and_then(fac) + .and_then(show_result) + .or_else(show_error) ; + if (result) { + return 0; + } else { + return 1; + } + return 0; +} diff --git a/source-code/ErrorHandling/README.md b/source-code/ErrorHandling/README.md index bab0e79..56625bc 100644 --- a/source-code/ErrorHandling/README.md +++ b/source-code/ErrorHandling/README.md @@ -6,3 +6,6 @@ Code illustrations for chapter 3, Modularity in Stroustrup's # What is it? 1. `fac.cpp`: illustrates exception handling. 1. `Makefile`: make file for these examples. +1. `Expected`: illustrates error handling using `std::expected`. +1. `MemoryLeak`: illustrates how inappropriately handled exceptions can + lead to memory leaks, and how to fix that. From 349fc7b4f494903806ecf0842964c4df4556712f Mon Sep 17 00:00:00 2001 From: Geert Jan Bex Date: Wed, 6 Mar 2024 17:40:54 +0100 Subject: [PATCH 12/12] Move exception handling example into own directory --- .../ErrorHandling/Exceptions/CMakeLists.txt | 9 +++++++++ source-code/ErrorHandling/Exceptions/README.md | 10 ++++++++++ .../ErrorHandling/{ => Exceptions}/fac.cpp | 0 source-code/ErrorHandling/Makefile | 15 --------------- source-code/ErrorHandling/README.md | 5 ++--- 5 files changed, 21 insertions(+), 18 deletions(-) create mode 100644 source-code/ErrorHandling/Exceptions/CMakeLists.txt create mode 100644 source-code/ErrorHandling/Exceptions/README.md rename source-code/ErrorHandling/{ => Exceptions}/fac.cpp (100%) delete mode 100644 source-code/ErrorHandling/Makefile diff --git a/source-code/ErrorHandling/Exceptions/CMakeLists.txt b/source-code/ErrorHandling/Exceptions/CMakeLists.txt new file mode 100644 index 0000000..5e1d34d --- /dev/null +++ b/source-code/ErrorHandling/Exceptions/CMakeLists.txt @@ -0,0 +1,9 @@ +cmake_minimum_required(VERSION 3.20) + +project(exceptions LANGUAGES CXX) + +set(CMAKE_CXX_STANDARD 23) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_CXX_EXTENSIONS OFF) + +add_executable(fac.exe fac.cpp) diff --git a/source-code/ErrorHandling/Exceptions/README.md b/source-code/ErrorHandling/Exceptions/README.md new file mode 100644 index 0000000..c73d3b7 --- /dev/null +++ b/source-code/ErrorHandling/Exceptions/README.md @@ -0,0 +1,10 @@ +# Expected + +Illustrates how to use exceptoin to do error handling. + +## What is it? + +1. `fac.cpp`: C++ application that reads an argument from the command line, + validates the value, computes the factorial and displays the output or + the error message. +1. `CMakeLists.txt`: CMake file to build the applications. diff --git a/source-code/ErrorHandling/fac.cpp b/source-code/ErrorHandling/Exceptions/fac.cpp similarity index 100% rename from source-code/ErrorHandling/fac.cpp rename to source-code/ErrorHandling/Exceptions/fac.cpp diff --git a/source-code/ErrorHandling/Makefile b/source-code/ErrorHandling/Makefile deleted file mode 100644 index 7e10d4b..0000000 --- a/source-code/ErrorHandling/Makefile +++ /dev/null @@ -1,15 +0,0 @@ -CXX = g++ -CXXFLAGS = -std=c++14 -g -O2 -Wall -Wextra -LDLIBS = -lm - -all: fac.exe - -%.exe: %.o - $(CXX) $(CXXFLAGS) -o $@ $< $(LDLIBS) - -%.o: %.cpp - $(CXX) $(CXXFLAGS) -c -o $@ $< - -clean: - $(RM) $(wildcard *.exe) $(wildcard *.o) - $(RM) core $(wildcard core.) diff --git a/source-code/ErrorHandling/README.md b/source-code/ErrorHandling/README.md index 56625bc..d21219d 100644 --- a/source-code/ErrorHandling/README.md +++ b/source-code/ErrorHandling/README.md @@ -4,8 +4,7 @@ Code illustrations for chapter 3, Modularity in Stroustrup's "A tour of C++" on error handling using exceptions. # What is it? -1. `fac.cpp`: illustrates exception handling. -1. `Makefile`: make file for these examples. -1. `Expected`: illustrates error handling using `std::expected`. +1. `Exceptions`: illustration of error handling with exceptions. 1. `MemoryLeak`: illustrates how inappropriately handled exceptions can lead to memory leaks, and how to fix that. +1. `Expected`: illustrates error handling using `std::expected`.