C++ Logo

SG20

Advanced search

Subject: Feedback for p1725r0 - Modular Topic Design
From: Yehezkel Bernat (yehezkelshb_at_[hidden])
Date: 2019-06-25 09:52:01


Hi,

In the pre-Cologne mailing, Christopher Di-Bella published a new paper
targeted sg20.
The paper is p1725r0 - Modular Topic Design (https://wg21.link/p1725r0).
This paper follows previous discussions (that I missed somehow) that
suggested changing the model used to create our teaching guidelines.

First, nicely done! I agree with this direction myself and think this will
improve the produced guidelines quality and usability.

I'd like to share some thought and comments about it, especially as I can't
attend the telecons and have no plans to attend the committee meetings in
the near future.

1. List of modules/units (module units? :) )
I'm missing modules that are designed around a programming paradigm. I
think more (academic) courses are designed around a paradigm than around a
technical topic.
The two obvious examples are Object-Oriented programming and Generic
programming. Maybe Functional programming should be there too? (Probably
about using STL and vocabulary types like std::optional, std::variant and
std::function)

2. Having a common basic module
As the target students including students that are new to programming, we
need a basic module which is prerequisite to every other module. This basic
module teaches the basics of programming (using C++), including:
- the basic concept of variable/object
- a few basic types (probably those that were suggested in p1389r0
[types.basic.primary]
<http://wg21.link/p1389r0#typesbasicprimary-primary-types> (<shameless
plug>but see p1747 <http://wg21.link/p1747> about `char8_t` and
`u8string`</shameless plug>)
- flow control
- basic understand of functions (just the very basic of few of the topics
currently suggested for Functions module)

3. Maybe a separated basic module for programmers coming from other
languages? Just to adapt what they already know to C++ way.

4. Functions module
I think it should include also recursion (see my #4)

Thanks
Yehezkel



SG20 list run by herb.sutter at gmail.com

Older Archives on Google Groups