DragonFly BSD
DragonFly kernel List (threaded) for 2003-07
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: Remove BIND, Sendmail, Perl and etc from base?


From: Chris Pressey <cpressey@xxxxxxxxxxxxx>
Date: Thu, 24 Jul 2003 21:52:11 -0500

On Thu, 24 Jul 2003 17:53:39 -0700
"Robert Clark" <res03db2@xxxxxxx> wrote:

> From: "Richard Coleman" <richardcoleman@xxxxxxxxxxxxxx>
> > I've always wished that the various OS'es should just pick a
> > "standard" scripting language, put in the base, and then use the
> > hell out of it.
> 
> I feel the same way.

Let me be the dissenting voice here, then: I think the number of
languages in the 'base' should be reduced to an absolute minimum.
To me that means: gcc, sh, and make, and ideally nothing else.

My argument would be something like:

- The 'base' should be the set of packages required to build and run the
OS, period.  If you want to do anything more than that, just bite the
bullet and install more packages.
- From a security standpoint, the fewer languages installed, the better;
and from a correctness standpoint, the fewer of those that can send
themselves into an infinite loop (i.e. Turing-complete,) the better.
- You certainly don't need floating point variables and closures to
install software and add users to the system.
- Taking a powerful scripting language and crippling it would only
result in a crippled scripting language.  We already have that - it's
called 'sh'.
- If you consider gcc+sh+make to be too cryptic and/or not flexible
enough to develop in directly, use them as back-end languages: write
Perlthonbycl scripts that write gcc/sh/make files, and include only
those files in the 'base'.  They won't (directly) depend on the
Perlthonbycl scripts, and won't require that the end user have
Perlthonbycl installed on their system.
- This approach avoids altogether the otherwise-inevitable religious war
over which language to bless - thus alienating the fewest people.

-Chris



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]