Goto Considered Harmful [was Re: Python and the need for speed]
Marko Rauhamaa
marko at pacujo.net
Fri Apr 14 16:10:52 EDT 2017
ram at zedat.fu-berlin.de (Stefan Ram):
> struct example
> { PIC<5,X<15>> last_name;
> PIC<88,VALUE<1,3,5,7,9>> odd_numbers; }
>
> . The above assumes appropriate definitions for »VALUE« (as a
> variadic template) »PIC«, and »X«. Only a C++ expert would be able
> to provide these definitions, but then they could be used by average
> C++ programmers.
I don't like your expert/average dichotomy. Similar dichotomies plague
other frameworks: Eclipse, Jenkins, Maven, Xt, MS Word etc.
If templates are considered a good thing, creating them should be
considered routine for *all* C++ programmers.
> . C++ has a very expressive user-definable type system including
> user-definable literals.
I don't like said system. Analogously, I'm not too keen on formal
schemata. Even more generally, I'm not big on *rule languages*, which
are ad-hoc and incomplete. Instead, I prefer *programming languages*,
which are compact and expressive, or even plain English.
> It should then also be possible to generate compile-time errors for
> assignments such as
>
> example_instance.odd_numbers = 4;
Every programming language has its big selling points. C++'s gospel is
its utmost compile-time checking. I'm a long time user of C++, but I'm
not a convert to that ideology.
> . I know too little about Python to tell whether something like this
> would be possible with Python, too.
Unfortunately, Python is taking baby steps in that direction.
Marko
More information about the Python-list
mailing list