Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 31 Dec 2018 13:52:02 +0000
From:      "Poul-Henning Kamp" <phk@phk.freebsd.dk>
To:        "Bjoern A. Zeeb" <bzeeb-lists@lists.zabbadoz.net>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Speculative: Rust for base system components
Message-ID:  <40474.1546264322@critter.freebsd.dk>
In-Reply-To: <07050B49-18E6-498A-91C0-3A0125EF5CA2@lists.zabbadoz.net>
References:  <ca76e5f7-6e59-bd67-144a-90ad66f0252e@metricspace.net> <39272.1546241776@critter.freebsd.dk> <07050B49-18E6-498A-91C0-3A0125EF5CA2@lists.zabbadoz.net>

next in thread | previous in thread | raw e-mail | index | archive | help
--------
In message <07050B49-18E6-498A-91C0-3A0125EF5CA2@lists.zabbadoz.net>, "Bjo=
ern A
. Zeeb" writes:
>On 31 Dec 2018, at 7:36, Poul-Henning Kamp wrote:
>
>> Tl;Dr:  Forget all about it.
>>
>>
>> The historical precedent is cvssup(1) which was written in Modula-3.
>
>While we are on the topic, what was the history on how FreeBSD ended up =

>with perl in the base system?

We wanted a scripting language stronger than /bin/sh, but preferably
without the kitchen-sink, guest-bathroom, sewer pipelines and wastewater
treatment plant,

One very desired use-case was to write the installer in a better
language than C, but other interesting ideas were floating
around too.  For instance inetd(8) or syslogd(8) could be given a
$script-program as "action" etc.

I can't remember if we had Forth in the boot code back then, but
it was certainly ruled out for this purpose by people who had grown
up on an inferior brand of pocket calculator :-)

We tried to import Tcl first, but that didn't work out, for N-1
values of "work out".

The one thing that worked was the one which made us pick Tcl:  It
was very small language designed for exactly that kind of embedding,
so the actual integration into the source tree wasn't too horrible.

Of course the version churn caused by John Ousterhout & Scriptics
trying to become DotCom millionaires gave some heartburn, but it
was mostly manageable.

However, everybody hated Tcl for all sorts of reasons, and since
this was the DotCom years, they hated it most of all because it was
not the "Endl=C3=B6sung for all programming requirements: Perl".

So we ripped out Tcl again and imported Perl, despite significant
misgivings, all if which came to fruition sooner or later.

Interesting, as soon as we had imported perl, all the much talked
about use-cases evaporated, and it never saw much actual use in
the tree.

Lua was brand new back then, and I dont remember if it was even
mentioned, it certainly was not in the running.

Rexx had no FOSS implementation, so that was not a candidate.

Importing bash(1) or ksh(1) was also proposed as a "half-way pregnant"
solution, but licenses were in the way.

-- =

Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk@FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    =

Never attribute to malice what can adequately be explained by incompetence=
.



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