From nobody Sun Jan 21 07:51:32 2024 X-Original-To: freebsd-hackers@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4THlt76xPZz56ryy for ; Sun, 21 Jan 2024 07:51:43 +0000 (UTC) (envelope-from phk@critter.freebsd.dk) Received: from phk.freebsd.dk (phk.freebsd.dk [130.225.244.222]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4THlt72fsDz4vFf for ; Sun, 21 Jan 2024 07:51:42 +0000 (UTC) (envelope-from phk@critter.freebsd.dk) Authentication-Results: mx1.freebsd.org; none Received: from critter.freebsd.dk (unknown [192.168.55.3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by phk.freebsd.dk (Postfix) with ESMTPS id C057689281; Sun, 21 Jan 2024 07:51:34 +0000 (UTC) Received: from critter.freebsd.dk (localhost [127.0.0.1]) by critter.freebsd.dk (8.17.1/8.16.1) with ESMTPS id 40L7pYB5011189 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Sun, 21 Jan 2024 07:51:34 GMT (envelope-from phk@critter.freebsd.dk) Received: (from phk@localhost) by critter.freebsd.dk (8.17.1/8.16.1/Submit) id 40L7pWEF011188; Sun, 21 Jan 2024 07:51:32 GMT (envelope-from phk) Message-Id: <202401210751.40L7pWEF011188@critter.freebsd.dk> To: Ihor Antonov cc: freebsd-hackers@freebsd.org Subject: Re: The Case for Rust (in the base system) In-reply-to: From: "Poul-Henning Kamp" References: <1673801705774097@mail.yandex.ru> List-Id: Technical discussions relating to FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-hackers List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-hackers@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <11186.1705823492.1@critter.freebsd.dk> Date: Sun, 21 Jan 2024 07:51:32 +0000 X-Rspamd-Queue-Id: 4THlt72fsDz4vFf X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:1835, ipnet:130.225.0.0/16, country:EU] -------- Ihor Antonov writes: > As much as I love the idea of Rust, I don't think it is going to solve > our problems. The tools are /never/ the real problem. I will readily agree that the ISO-C people have done more to hurt the C language, and less to improve it, than anybody else, and that we need to deal with their continued refusal to come into the 1990'ies. But after I read this entire thread, the "pro" argument for Rust seems boil down to just "all the cool kids do it". That exact same argument was used for "Perl in base" and "Java in base" previously, and if we hadn't dodged those bullets, we wouldn't be here today. The sprawling and loosely connected ports collection has several strata of "all the cool kids do it" languages, and it seems to be a much better "organism" for dealing with their eventual obsolescence, than our tightly integrated src collection. I will also "second" the comment about C++ getting to be a really good language, in particular if you play it like a violin: Just because you /paid/ for the entire bow, doesn't mean you have to /play/ the entire bow. So rather than jump onto this or some other hypewagon-of-the-year, only to regret it some years later and having to repay the technical debt with interest to get it out of the tree again, I propose that we quietly and gradually look more and more to C++ for our "advanced needs". I also propose, that next time somebody advocates for importing some "all the cool kids are doing it language" or other, we refuse to even look at their proposal, until they have proven their skill in, and dedication to, the language, by faithfully reimplementing cvsup in it, and documented how and why it is a better language for that, than Modula-3 was. Poul-Henning -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk@FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence.