Date: Mon, 31 Dec 2018 12:58:51 -0500 From: Eric McCorkle <eric@metricspace.net> To: cem@freebsd.org Cc: "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org> Subject: Re: Speculative: Rust for base system components Message-ID: <414c837f-4b06-b6dc-468c-8bbbc8ad8c59@metricspace.net> In-Reply-To: <CAG6CVpV0kxupmkhHiYBT05Yfst6uNtbUyYUzG95Zwcbk9F3K0Q@mail.gmail.com> References: <ca76e5f7-6e59-bd67-144a-90ad66f0252e@metricspace.net> <CAG6CVpV0kxupmkhHiYBT05Yfst6uNtbUyYUzG95Zwcbk9F3K0Q@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --mVEswB6zIOeGUinG00wEax78tFQn6bdHh Content-Type: multipart/mixed; boundary="07RTIbBML4OdkKDKM21ED2tYYSqKsZjIL"; protected-headers="v1" From: Eric McCorkle <eric@metricspace.net> To: cem@freebsd.org Cc: "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org> Message-ID: <414c837f-4b06-b6dc-468c-8bbbc8ad8c59@metricspace.net> Subject: Re: Speculative: Rust for base system components References: <ca76e5f7-6e59-bd67-144a-90ad66f0252e@metricspace.net> <CAG6CVpV0kxupmkhHiYBT05Yfst6uNtbUyYUzG95Zwcbk9F3K0Q@mail.gmail.com> In-Reply-To: <CAG6CVpV0kxupmkhHiYBT05Yfst6uNtbUyYUzG95Zwcbk9F3K0Q@mail.gmail.com> --07RTIbBML4OdkKDKM21ED2tYYSqKsZjIL Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable On 12/31/18 1:56 AM, Conrad Meyer wrote: > Rust has many of the exact same problems C++ has. Sure, it avoids a > few classes of issue. But it doesn't fix the classic C++ problems of > extremely slow build times (if you think C++ is bad, Rust is worse) > and having a kitchen sink of language features that make Rust and C++ > code difficult to grok. I would debate the kitchen sink claim. For one, Rust benefits from a solid understanding of type systems that didn't exist when C++ was created. Proper parameterized types are a significant improvement over C++ templates (the same holds for Java's generics, but that's tangential). This alone reduces the complexity of the language (and its error messages) considerably. While I give C++ slack on the issue of templates because Somebody Had To Go First, that doesn't mean I relish the idea of writing C++ code. Beyond that, the C++ standardization process these days is seemingly aiming at bringing everything under the sun into the language itself, whereas Rust went for a syntax extension system and an overall language design that avoids the need to graft everything into the language itself. (Side note: as much as I loathe macros in programming languages, Rust actually seems to have produced a reasonable macro-like system) --07RTIbBML4OdkKDKM21ED2tYYSqKsZjIL-- --mVEswB6zIOeGUinG00wEax78tFQn6bdHh Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEARYIAB0WIQQPGL/SuSPN3pRzpwUI38IpFsHCbAUCXCpY2wAKCRAI38IpFsHC bAGVAQClIjTLae6497UKVN/uZmmjmT9yI7qCU5imV2gH4/iLWwEAn2LPfPprvRCu ZlcPpTHV5nChsOIqPD3Ab1ZXUQEHXgU= =yw+j -----END PGP SIGNATURE----- --mVEswB6zIOeGUinG00wEax78tFQn6bdHh--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?414c837f-4b06-b6dc-468c-8bbbc8ad8c59>