From owner-freebsd-hackers@freebsd.org Tue Jan 1 23:16:24 2019 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9B2FA142D7A9 for ; Tue, 1 Jan 2019 23:16:24 +0000 (UTC) (envelope-from drosih@rpi.edu) Received: from smtp9.server.rpi.edu (smtp9.server.rpi.edu [128.113.2.229]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "canit.localdomain", Issuer "canit.localdomain" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id C5A608F70A for ; Tue, 1 Jan 2019 23:16:23 +0000 (UTC) (envelope-from drosih@rpi.edu) Received: from smtp-auth3.server.rpi.edu (route.canit.rpi.edu [128.113.2.233]) by smtp9.server.rpi.edu (8.14.4/8.14.4/Debian-8+deb8u2) with ESMTP id x01NGLOr031580 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 1 Jan 2019 18:16:22 -0500 Received: from smtp-auth3.server.rpi.edu (localhost [127.0.0.1]) by smtp-auth3.server.rpi.edu (Postfix) with ESMTP id A91E15802F for ; Tue, 1 Jan 2019 18:16:21 -0500 (EST) Received: from webmail1.server.rpi.edu (webmail1.server.rpi.edu [128.113.2.169]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: drosih) by smtp-auth3.server.rpi.edu (Postfix) with ESMTPSA id 9E9EF5802C for ; Tue, 1 Jan 2019 18:16:21 -0500 (EST) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Date: Tue, 01 Jan 2019 18:16:21 -0500 From: drosih To: freebsd-hackers@freebsd.org Subject: Re: Speculative: Rust for base system components In-Reply-To: References: <20190101045638.D280E1F56@spqr.komquats.com> Message-ID: <4ea0612bbad08e61a15d495459b2bede@rpi.edu> X-Sender: drosih@rpi.edu User-Agent: Roundcube Webmail/0.9.5 X-Originating-IP: 128.113.124.17 X-Remote-Browser: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/11.1.2 Safari/605.1.15 X-RoundCube-Server: 128.113.2.169 X-Virus-Scanned: ClamAV using ClamSMTP X-Bayes-Prob: 0.9999 (Score 5, tokens from: outgoing, @@RPTN) X-Spam-Score: 5.00 (*****) [Hold at 10.10] Bayes(0.9999:5.0) X-CanIt-Incident-Id: 02XjbglMx X-CanIt-Geo: ip=128.113.2.169; country=US; region=New York; city=Troy; latitude=42.7495; longitude=-73.5951; http://maps.google.com/maps?q=42.7495,-73.5951&z=6 X-CanItPRO-Stream: outgoing X-Canit-Stats-ID: Bayes signature not available X-Scanned-By: CanIt (www . roaringpenguin . com) on 128.113.2.229 X-Rspamd-Queue-Id: C5A608F70A X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; dmarc=pass (policy=none) header.from=rpi.edu; spf=pass (mx1.freebsd.org: domain of drosih@rpi.edu designates 128.113.2.229 as permitted sender) smtp.mailfrom=drosih@rpi.edu X-Spamd-Result: default: False [-3.60 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; HAS_XOIP(0.00)[]; FROM_HAS_DN(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:128.113.2.225/28]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-hackers@freebsd.org]; TO_DN_NONE(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; RCVD_COUNT_THREE(0.00)[4]; RCVD_TLS_LAST(0.00)[]; RCVD_IN_DNSWL_MED(-0.20)[229.2.113.128.list.dnswl.org : 127.0.11.2]; MX_GOOD(-0.01)[cached: mail.rpi.edu]; DMARC_POLICY_ALLOW(-0.50)[rpi.edu,none]; NEURAL_HAM_SHORT(-0.58)[-0.580,0]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; IP_SCORE(-0.02)[country: US(-0.08)]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:91, ipnet:128.113.0.0/16, country:US]; MID_RHS_MATCH_FROM(0.00)[] X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Jan 2019 23:16:24 -0000 On 2019-01-01 11:00, Igor Mozolevsky wrote: > On Tue, 1 Jan 2019 at 15:54, Eric McCorkle wrote: > > > > > I don't think that's a fair comparison at all. Rust is a systems > > language built around zero-cost abstractions that is usable for > > developing real embedded code > > > > Brian's simple experiment [1] demonstrates that "zero-cost" is > more of an aspiration (and a very long term one, perhaps) than > a hard fact ;-) Brian's simple experiment is a simple experiment. It's interesting, but hardly the definitive word in evaluating a language. We need more real-world experience with serious programs before dismissing rust. But at the same time, we need much more real-world experience with writing rust before we can consider bringing it into the base system. We can't bring it into the base system and then hope that "magic happens" because it's sitting there. I thought the 'ripgrep' program seemed like an interesting one to look at. Compare how fast it works to how fast our grep works. (I have not done that comparison! I just take advantage of the extra features that 'ripgrep' has.) And 'ripgrep' works fine as a port. It does not need to be in the base system. It's just an example to look at, for those who might be interested in rust. Maybe other people know of other real-world useful programs which are written in rust, and which might be interesting to look at. So consider me a cheerleader for "Let's get some more experience!". (not that all of us can do that, but at least *some* of us!) -- garance alistair drosehn aka gad@FreeBSD.org -- senior systems programmer @rpi