C++ Logo


Advanced search

Re: [isocpp-ext] Can we expect that all C++ source files can have the same suffix?

From: Gabriel Dos Reis <gdr_at_[hidden]>
Date: Mon, 25 Apr 2022 12:22:55 +0000
c) continue to use your development environment (whether it is integrated or unintegrated is irrelevant)


While it is useful for people to have the instant gratification of sand castle building and testing some ideas in the small, building skyscrapers demand different set of tools and skills. The tools we use to build sand castles aren't the same we deploy for skyscrapers.
"using modules" must mean something more than just saying '$CC $CXX20OPTION SOURCEFILE.cc'. It is for programming in the large, which in reality demands using build tools.

-- Gaby

-----Original Message-----
From: SG15 <sg15-bounces_at_lists.isocpp.org> On Behalf Of Nathan Sidwell via SG15
Sent: Monday, April 25, 2022 4:24 AM
To: Daniel Ruoso <daniel_at_ruoso.com>; sg15_at_lists.isocpp.org
Cc: Nathan Sidwell <nathan_at_acm.org>; Tom Honermann <tom_at_honermann.net>; ext_at_lists.isocpp.org; Peter Dimov <pdimov_at_gmail.com>
Subject: Re: [SG15] [isocpp-ext] Can we expect that all C++ source files can have the same suffix?

On 4/20/22 09:22, Daniel Ruoso wrote:
> The thing that I am confused about is: why does it have to be a
> feature of the compiler?
> If folks want a build system for toy examples that works with a single
> command line, there's nothing stopping you from doing it. In fact, you
> could even wrap an existing build system into a convenient script that
> generates a project from the files given and then invokes the
> configure and build steps.
> Why do we need to coerce compilers into playing this role?

It's a marketing problem. Consider:

a) 'You want to use modules? Great! Just say '$CC $CXX20OPTION

b) 'You want to use modules? Great! Just install $SPECIALTOOL, and use a
this new .ixx suffix. $SPECIALTOOL is just like your compiler except
that ...'

#b seems a greater impediment to me. (For those who are unaware, I
considered a different suffix for GCC, but that would have meant (a)
updating bits of fiddly GCC configury, but most importantly teaching
emacs new things and I was too lazy to do that -- even that little speed
bump was too much!)

Are people familiar with libtool? An existing scheme to provide a
platform-neutral command line compilation/linker thingy. Ugh!


> Em qua., 20 de abr. de 2022 às 07:42, Boris Kolpackov via SG15
> <sg15_at_[hidden]> escreveu:
>> Peter Dimov <pdimov_at_gmail.com> writes:
>>> [...] and
>>> import <mylib/myheader.hpp>;
>>> working without a build system wouldn't be that bad either.
>> Would you be prepared to wait a potentially significant time
>> while the compiler builds (likely serially) BMIs for this
>> header unit and any other header units and/or named modules
>> that could be imported, transitively (while dumping all those
>> BMIs on your disk somewhere)?
>> In a way, it might be cleaner for a build system to provide
>> the "compiler driver" mode rather than for the compiler to
>> provide the "build system" mode. Plus the build system will
>> give you some parallelism (e.g., for building named modules).
>> _______________________________________________
>> SG15 mailing list
>> SG15_at_lists.isocpp.org
>> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.isocpp.org%2Fmailman%2Flistinfo.cgi%2Fsg15&amp;data=05%7C01%7Cgdr%40microsoft.com%7C6a3f0ae792314634cf6c08da26ae26ce%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637864826664398401%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&amp;sdata=TqPKX46sXFlhz%2F%2BgefWFGNvLbBQqMOP8ZxEuz50eUl4%3D&amp;reserved=0

Nathan Sidwell
SG15 mailing list

Received on 2022-04-25 12:23:00