Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 02 Jan 2019 10:29:04 -0800
From:      Cy Schubert <Cy.Schubert@cschubert.com>
To:        Eric McCorkle <eric@metricspace.net>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Speculative: Rust for base system components
Message-ID:  <201901021829.x02IT4Kc064169@slippy.cwsent.com>
In-Reply-To: Message from Eric McCorkle <eric@metricspace.net> of "Tue, 01 Jan 2019 10:50:28 -0500." <a2d04773-c7cc-457d-4db6-913cb84e885b@metricspace.net>

next in thread | previous in thread | raw e-mail | index | archive | help
In message <a2d04773-c7cc-457d-4db6-913cb84e885b@metricspace.net>, Eric 
McCorkl
e writes:
> This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
> --tu7wwqLaLNvV59iK66RVuCN4u9LNuo2ra
> Content-Type: multipart/mixed; boundary="40zQJvQINjrS8i7U0w9C4z0duC53dUJgc";
>  protected-headers="v1"
> From: Eric McCorkle <eric@metricspace.net>
> To: freebsd-hackers@freebsd.org
> Message-ID: <a2d04773-c7cc-457d-4db6-913cb84e885b@metricspace.net>
> Subject: Re: Speculative: Rust for base system components
> References: <20190101045638.D280E1F56@spqr.komquats.com>
> In-Reply-To: <20190101045638.D280E1F56@spqr.komquats.com>
>
> --40zQJvQINjrS8i7U0w9C4z0duC53dUJgc
> Content-Type: text/plain; charset=utf-8
> Content-Language: en-US
> Content-Transfer-Encoding: quoted-printable
>
> On 12/31/18 11:56 PM, Cy Schubert wrote:
> > What would having another language in base buy us? This reminds me of a=
>  couple of months ago at OpenHack Victoria someone was trying to convince=
>  me that the kernel needed a JavaVM. (Sure we each had a few beers) but t=
> he similarity of this discussion doesn't escape me. Kernel modules and fu=
> nctions written in java^H^H^H^H rust: why?
>
> 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.  Java is a completely different animal,
> and there is no reasonable case for a Java VM in the kernel/loader.

What is the proposal then? Just to have another language in base? If 
it's just that, wouldn't the port suffice?

>
> I'm all for discussion and criticism of this, that's why I posted it,
> but I don't think these kinds of false equivalences are helpful.

Actually it is helpful. Without a solid proposal of a new feature or 
userland utility to be imported into base that requires the support of 
a language not already in base, the implication of the original email 
starting this thread was to rewrite FreeBSD using rust. There is 
equivalence as the argument that evening was, "there are more Java 
developers than C developers and replacing C with Java would benefit by 
adding to the pool of possible contributors."

In reality we should rely more on ports. Over the years this business 
has become more fragmented. Each year we see new languages being 
developed and used. Importing new shiny objects into base is 
unsustainable. IMO the momentum is behind containerization, 
specifically kubernetes and docker-like containers. That is today. The 
next year or two will introduce new technologies and shiny objects 
which we will likely need to introduce here to remain relevant. We 
should be looking to reduce the footprint of base, introduce new 
technologies in ports (ports are much easier to build from scratch, 
maintain, and update than base). Additionally the idea of meta-ports 
that install groups of packages would make building purpose-built 
systems a breeze for our user base, similar to what anaconda does, like 
a FreeBSD based LAMP (FAMP) stack package that installs all the 
necessary bits with one pkg install command.

In summary we should pair down base and use ports to our advantage. 
Unless the proposal is to add some feature written in rust that cannot 
live in ports or if the proposal is to rewrite FreeBSD into rust (which 
I vehemently disagree with), there is no reason to consider adding rust 
to base.


-- 
Cheers,
Cy Schubert <Cy.Schubert@cschubert.com>
FreeBSD UNIX:  <cy@FreeBSD.org>   Web:  http://www.FreeBSD.org

	The need of the many outweighs the greed of the few.







Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201901021829.x02IT4Kc064169>