From nobody Mon Jan 22 06:38:40 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 4TJLCN61nNz57DNj for ; Mon, 22 Jan 2024 06:38:40 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (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-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TJLCN5WWVz41Pm; Mon, 22 Jan 2024 06:38:40 +0000 (UTC) (envelope-from danfe@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1705905520; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=qTd84ObOw5MoebdZfxiIF+xvzOOrxNoDr4iisJIj7Kg=; b=q/y/ogtrRW5v+g9rABrFYqtvPJve1SW5KB0NmsBzwr0GUSO4ASnqZKLe1GwSdWbLxXgCaW Ys8kRVDpHsubz6EjghwsDmu7wV1aNS723uPZj9061T65CIKqedx5WT0kDSj9VxY+uXDLLx P3LvwKe7+Tg0WevAnVXmuVzudXoC7UulObxYw0zOf8/QjkMIQepqSFdDZwEqdWQe3ADhya JK1Cv42Oy65kAG5P8mra3ppZENRxpm2uVTkA//6IJkjBQiGItbUnWLkKxAxh+0w2gMVkrl LIruJoaYswqmAV4jtCuvALx9Kf0zCKzSjNTOrLmGBbcmp7Gy/xnrgmBSAhKMsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1705905520; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=qTd84ObOw5MoebdZfxiIF+xvzOOrxNoDr4iisJIj7Kg=; b=Rc8SFMn1/kIWmxahqLSy3Aj8ezrwjSmQ9Uwa1xhODc70sXdzCn5A142eCDdAoUulWmTXRp N5YsumOdy1HBRoHK0snTPwXGBX4pr2PiHLCUqrVC0Sr4DdhKr3hyuB1XGra4eIDAyrRysM xArxGewTWNpldxVBWr81L4fBE14TkYq6KNtpvHAL3XWzagkHkpYMEa1+qsRHAUT06yrgBz XZ7NRippxt/AU66JPHvFPUnYXvzYpVYjT2gapXleE5hmuCvnFh24KjMRRSmtQykBK8hSsr DZ43i2txKWf0pVPejDwhZ2RHqxHWrObIoAbpQYo4mFqHhqAApDDtZETNHxmngw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1705905520; a=rsa-sha256; cv=none; b=As6hmH4VdyWK9PUQb7Fuk/SfHDpGrWCS8Tx7peMN6Y/8OI65JL6SONNDL9T56J+ff40o3Q ug97Ekr5xXX/G77tJxBoRHTbX3TLVG1DK+fNbiRRWU7Mzl9O0sCOpH8wVQHEgJI5fbpRLO ml3/TjjK1NTkuYnr4Pxt/0r6KSOSxezHO9WDT0mDC2EjVfnyeTqAP48pkETSa09J7XJDEG kVzFl+oojJiO4HxUDSZccXh4cJrI3b1ujWP3zm8vFUmLG9ylSt+n5zZxGNMApKcUXW/RV5 ltgTRIHgqHD3XnRO3EM3wN8GWQ2u7VfomrPRJWByyul4g2boCLlHcWiq8PjO5A== Received: by freefall.freebsd.org (Postfix, from userid 1033) id A2A5E19EAF; Mon, 22 Jan 2024 06:38:40 +0000 (UTC) Date: Mon, 22 Jan 2024 06:38:40 +0000 From: Alexey Dokuchaev To: Poul-Henning Kamp Cc: Ihor Antonov , freebsd-hackers@freebsd.org Subject: Re: The Case for Rust (in the base system) Message-ID: References: <1673801705774097@mail.yandex.ru> <202401210751.40L7pWEF011188@critter.freebsd.dk> 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-Disposition: inline In-Reply-To: <202401210751.40L7pWEF011188@critter.freebsd.dk> On Sun, Jan 21, 2024 at 07:51:32AM +0000, Poul-Henning Kamp wrote: > ... > 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. +1. And Perl even didn't need to bootstrap itself with itself or specific version of LLVM which takes ages to build and/or ~200GB of tmpfs space. My computer at work has only 4GB of RAM and I still want to build and run modern FreeBSD on it. While I generally do not oppose the idea of (re)writing parts of the system in better, safer language, anything which itself is not written in C/C++ (or can bootstrap itself from scratch in minutes) should not be taken seriously. > 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". Right. FWIW, had evolved significantly over the last 20 years and gained a lot in the safety department with proper ownership (move) semantics, new reference/smart pointer types, lambdas, etc. to the extent its author claims that it's no less safe than Rust now*. > 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. As always, Poul-Henning just nails it. Well said! ./danfe *) https://developers.slashdot.org/story/23/01/21/0526236/rust-safety-is-not-superior-to-c-bjarne-stroustrup-says