Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 7 May 2002 16:09:19 -0700 (PDT)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        Mark Murray <mark@grondar.za>
Cc:        current@FreeBSD.ORG
Subject:   Re: The future of perl on FreeBSD
Message-ID:  <200205072309.g47N9JA2001180@apollo.backplane.com>
References:   <200205072241.g47Mf0jV002339@grimreaper.grondar.org>

next in thread | previous in thread | raw e-mail | index | archive | help
:2) split perl down to base language/interpreter for OS use, and
:   make the libraries a port.
:   PRO: supported by some senior(?) perl community committers (as
:        discussed on a perl list *NOTE* _NOT_ FreeBSD committers!),
:        who have proposed that perl be split into two main parts:
:        1) perl-base   2) perl-libraries. the base changes much
:        less than the libraries, and would be very suitable for
:        base OS's. perl-library is fairly mobile and would be
:        excellent ports-fodder. 
:   CON: is not here yet (from perl crowd). We'd have to roll-our-
:        own in the meanwhile. base-perl is not "full-perl"
:        until a port (perl-library) is installed. the ports
:        collection will need some work to handle this.
:   I've already rolled a perl-base for FreeBSD/Perl-5.6.1 as a
:   proof of concept. It will not have the cross-build breakages
:   that the current kluge-up has. If wanted, I could commit it
:   straight away. I'd need to build a perl library to go with
:   this. This is a bit more work, but not hard.
:
:3) Ditch perl from the base system completely, and rely on the
:   ports system for FreeBSD's perl requirements.
:   PRO: Speed up "make world", debloat source tree, prevent
:        many cross-build breakages.
:   CON: No high-level scripting system in the tree by default
:        (need to install a port to get one). The ports collection
:        will need some work to handle this.
:   I've tested a build of this, including kernel. Some apps
:   (like sockstat) break. I could commit this if it is wanted.
:
:4) Other?
:   Please don't overly theorise here :-). We need engineering,
:   not philosophy.
:
:Once this has been discussed, if there is a clear line of action,
:I will take that, otherwise I may Call For Votes, or some such
:tie-breaking action.
:
:What say you?
:...
:*Dons fireproof underwear* :-)
:
:M
:-- 
:o       Mark Murray

    Assuming the base utility issues can be addressed, I would go for #3.
    A clean break would allow the perl community to focus on the port and
    various flavors of same.  If this cannot be accomplished  then I
    would recommend keeping an unadorned perl in the base system but
    calling it something else, like resurrecting the notion of 
    'miniperl' and having the base utilities that use perl explicitly
    specify /usr/bin/miniperl, and not having a /usr/bin/perl in the base
    system at all... kind of a modified #3.  If miniperl requires additional
    library support the support would be put in a non-standard place so as not
    to intefere with the ports perl *at *all*.  i.e. we would not try to share
    any portion of miniperl and perl.  Amoung other things that would give us
    a large safety margin in the face of major perl updates.

    The base utility issue is mainly:

	makewhatis, catman, sockstat, whereis, which, adduser, rmuser, kbdmap, pkg_update

						-Matt


earth:/home/dillon# fgrep '#\!/usr/bin/perl' `find /bin /sbin /usr/bin /usr/sbin /usr/libexec -type f`
/usr/bin/makewhatis:#!/usr/bin/perl
/usr/bin/catman:#!/usr/bin/perl
/usr/bin/pod2html:#!/usr/bin/perl
/usr/bin/pod2man:#!/usr/bin/perl
/usr/bin/pod2latex:#!/usr/bin/perl
/usr/bin/pod2text:#!/usr/bin/perl
/usr/bin/c2ph:#!/usr/bin/perl
/usr/bin/h2ph:#!/usr/bin/perl
/usr/bin/h2xs:#!/usr/bin/perl
/usr/bin/perlbug:#!/usr/bin/perl
/usr/bin/perlcc:#!/usr/bin/perl
/usr/bin/perldoc:#!/usr/bin/perl
/usr/bin/pl2pm:#!/usr/bin/perl
/usr/bin/splain:#!/usr/bin/perl
Binary file /usr/bin/a2p matches
/usr/bin/s2p:#!/usr/bin/perl
/usr/bin/s2p:$startperl = "#!/usr/bin/perl";
/usr/bin/find2perl:#!/usr/bin/perl
/usr/bin/find2perl:$startperl = "#!/usr/bin/perl";
/usr/bin/htags:#!/usr/bin/perl
/usr/bin/htags:#!/usr/bin/perl
/usr/bin/sockstat:#!/usr/bin/perl -w
/usr/bin/whereis:#!/usr/bin/perl
/usr/bin/which:#!/usr/bin/perl
/usr/bin/mmroff:#!/usr/bin/perl
/usr/sbin/adduser:#!/usr/bin/perl
/usr/sbin/rmuser:#!/usr/bin/perl
/usr/sbin/vidfont:#!/usr/bin/perl
/usr/sbin/kbdmap:#!/usr/bin/perl
/usr/sbin/spkrtest:#!/usr/bin/perl
/usr/sbin/pkg_update:#!/usr/bin/perl -w


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




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