State of the C++ Syllabus July'23

Hi there fellow Cpp-affectionates!

A lot has happened after my last in-detail post about the syllabus tree. And there is a lot in planning for the tree and the track in general. Let’s get to it.

What has happened with the syllabus?

There are currently 15 concepts in the tree:

  • basics
  • booleans
  • classes
  • comparisons
  • enums*
  • headers**
  • if-statements
  • includes
  • loops
  • namespaces
  • numbers
  • references
  • strings
  • switch*
  • vector-arrays

* The Switch and Enums concepts are getting an exercise as we speak (PR is waiting for final comments).
** The Headers exercise needs a good chunk of my time so, I can think about the test architecture.

What will (probably) happen in the syllabus tree?

On my non-definite list of future concepts are the following items:

  • Functions
  • STL Containers
  • For-each loops
  • Iterators
  • Advanced Classes
  • Copy and Move
  • Pointers
  • Smart Pointers
  • Exceptions
  • Polymorphism
  • Templates
  • Input/Output
  • Lambdas
  • constexpr
  • C-Style Strings / string_view

What tasks are there apart from the tree?

There are also the following task, that would make the track better:

  • Implement some of the 70 unimplemented practice exercises
  • build an analyzer
  • build a representer
  • upgrade the test runner from v2 to v3

I will open another thread for people looking to help with the tree or the track in general.