From nobody Wed Sep 04 19:52:43 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 4WzY7T6xCXz5VGl0 for ; Wed, 04 Sep 2024 19:52:53 +0000 (UTC) (envelope-from x9k@charlie.emu.st) Received: from f3.bushwire.net (f3.bushwire.net [IPv6:2403:580c:e522:0:203:0:120:11]) by mx1.freebsd.org (Postfix) with ESMTP id 4WzY7R36dlz46wl for ; Wed, 4 Sep 2024 19:52:50 +0000 (UTC) (envelope-from x9k@charlie.emu.st) Authentication-Results: mx1.freebsd.org; dkim=fail ("headers rsa verify failed") header.d=emu.st header.s=2019 header.b=NNjQWw3v; dmarc=none; spf=pass (mx1.freebsd.org: domain of x9k@charlie.emu.st designates 2403:580c:e522:0:203:0:120:11 as permitted sender) smtp.mailfrom=x9k@charlie.emu.st Received: by f3.bushwire.net (Postfix, from userid 1001) id 8738F4E670; Thu, 05 Sep 2024 05:52:43 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/simple; d=emu.st; s=2019; t=1725479563; bh=ROL248zFHTe/Czq4lp0u9l8/xso=; h=Comments:Received:From:Comments:Message-ID:References: Content-Type:In-Reply-To:Content-Disposition:Date:To:Subject: Mime-Version; b=NNjQWw3vYCfN1ZqlmVsufMdl0vtgV0K5cxZKb2k9yJYSGq7H0uyBS4VdSNHDEZn2I SHej2EjrGsR3+K2lIPD16pugNcKqElCUSbeQzQUpVbFhqZ7APM8j2ASH8O7pjEhcyS LePZ+xGUCWzI3UcWabEu4lUeN1TQl8JNwhO+lKaU=O+lKaU= Comments: QMDA 0.3a Received: (qmail 54728 invoked by uid 1001); 4 Sep 2024 19:52:43 -0000 From: "Mark Delany" Comments: QMDASubmit submit() 0.2.0-final Message-ID: <0.2.0-final-1725479563.495-0xfd6a7d@qmda.emu.st> References: <202409031532.483FW0If007252@critter.freebsd.dk> <7533543.20240904114624@yahoo.com> <0.2.0-final-1725440949.866-0xb4bb20@qmda.emu.st> <2bc0f51f110c943c58a1ce34d6725e9c@purelymail.com> Content-Type: text/plain; charset=utf-8 In-Reply-To: <2bc0f51f110c943c58a1ce34d6725e9c@purelymail.com> Content-Disposition: inline Date: Wed, 4 Sep 2024 19:52:43 +0000 To: freebsd-hackers@freebsd.org Subject: Re: Rust: kernel vs user-space 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 X-Spamd-Bar: / X-Spamd-Result: default: False [-0.65 / 15.00]; R_DKIM_REJECT(1.00)[emu.st:s=2019]; NEURAL_HAM_SHORT(-1.00)[-0.998]; NEURAL_HAM_MEDIUM(-0.85)[-0.851]; MV_CASE(0.50)[]; NEURAL_HAM_LONG(-0.20)[-0.200]; R_SPF_ALLOW(-0.20)[+ip6:2403:580c:e522::0/48]; ONCE_RECEIVED(0.10)[]; MIME_GOOD(-0.10)[text/plain]; RCVD_NO_TLS_LAST(0.10)[]; RCPT_COUNT_ONE(0.00)[1]; ASN(0.00)[asn:4764, ipnet:2403:5800::/27, country:AU]; RCVD_COUNT_ONE(0.00)[1]; ARC_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; FROM_HAS_DN(0.00)[]; MID_RHS_MATCH_FROMTLD(0.00)[]; TO_DN_NONE(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; MISSING_XM_UA(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MLMMJ_DEST(0.00)[freebsd-hackers@freebsd.org]; DMARC_NA(0.00)[emu.st]; DKIM_TRACE(0.00)[emu.st:-] X-Rspamd-Queue-Id: 4WzY7R36dlz46wl > And this is better than C because ...? I don't think any sane person suggests rewrites for rewrites sake, but it's the new code that needs to be created in the coming decades that is in question. The argument goes that C is becoming niche as the diminishing pool of developers approach retirement age. Wasn't that the most obvious trend of the last community survey conducted a while back? At some point finding C programmers may be as hard as finding COBOL programmers. The second argument goes that other languages are simply much more productive and that productivity is crucial for very large projects which need resourcing over decades. > Lua > Python > Ruby > Rust > Zig > dlang > go Above and beyond even deciding whether another language besides C is a good choice and above and beyond picking which one(s) are most suited, the underlying issue is that programming languages may continue to evolve and emerge and thus any choice today risks rapid obsolescence. It just may be that the programming industry is addicted to the siren call of the next shiny new thing and that there are no good language choices to be made for a project that spans decades. If you look at each of the decades that BSD code and its forebears have lived thru, each one produced a shiny new language with almost all of them now in rapid decline, extremely niche or defunct. So, any discussion like this is mostly about predicting the future, which I'm told is rather hard: - Is there a significant risk in not being able to source future C programmers? - Will a more popular/current language attract more contributors? - Is it possible to chose an appropriate language which will remain popular for decades? - Is it possible to define a set of criteria for when such decisions need to be made? - Is indecision a good option to see if next-gen programmers lose their addiction to shiny? Mark.