Pourquoi Perl est-il installé par défaut avec la plupart des distributions Linux?
Pourquoi Perl est-il installé par défaut avec la plupart des distributions Linux?
Réponses:
La réponse est / n'est pas sexy, selon votre point de vue.
Perl est très utile. De nombreux utilitaires système sont écrits en ou dépendent de Perl. La plupart des systèmes ne fonctionneront pas correctement si Perl est désinstallé.
Il y a quelques années, FreeBSD a déployé beaucoup d'efforts pour supprimer Perl en tant que dépendance du système de base. Ce n'était pas une tâche facile.
Dans la publication originale de Perl v1.0 de Larry Wall au groupe de discussion comp.sources.misc le 18 décembre 1987, il a déclaré:
Si vous avez un problème qui utiliserait habituellement sed ou awk ou sh, mais il dépasse leurs capacités ou doit fonctionner un peu plus vite, et vous ne voulez pas écrire la chose idiote en C, alors perl peut être pour vous.
Dans une exposition beaucoup plus tardive , il a développé un peu plus:
Mais les frustrations de la programmation shell Unix ont conduit directement à la création de Perl, que je n'ai pas vraiment le temps de dire. Mais essentiellement, j'ai trouvé que le script shell était intrinsèquement limité par le fait que la plupart de ses verbes ne sont pas sous son contrôle et donc largement incohérents les uns avec les autres. Et les noms sont appauvris, limités aux chaînes et aux fichiers, avec une typologie qui sait quoi ...
Plus destructeur était l'état d'esprit qu'il s'agissait d'un univers unidimensionnel: vous avez soit programmé en C, soit programmé en shell, car ils sont évidemment aux extrémités opposées du One True Continuum. Perl a vu le jour lorsque j'ai réalisé que les scripts ne devaient pas toujours être considérés comme l'opposé de la programmation, mais qu'un seul langage pouvait être assez bon pour les deux. Cela a ouvert une énorme niche écologique. Beaucoup d'entre vous ont vu mon ancien diagramme à clapet, avec les deux dimensions de la manipulexité et de la whipuptitude.
Aujourd'hui, Perl est une alternative / remplacement standard pour les besoins de script shell et d'analyse de texte, et avec beaucoup plus de puissance que les outils traditionnels. En raison de sa flexibilité extrême (certains diraient inélégante), Perl a été décrit comme " la tronçonneuse suisse des langages de script ". Les tâches peuvent souvent être considérablement plus courtes, plus faciles ou plus extensibles lorsqu'elles sont résolues avec Perl. De très nombreux outils système, scripts et programmes plus importants sont régulièrement écrits en Perl. Donc, dans l'environnement Linux moderne, Perl est maintenant un autre outil Unix standard, et vraiment indispensable.
awk
et sed
en (Perl).Je pense que la réponse à cette question est en partie historique, en partie pratique.
Quant à l'histoire, Perl est un langage chic. Il est plus chic que Python (sans parler de PHP), bien que je ne sache pas ce qui est "mieux" (si cela peut être analysé de manière formelle, ce dont je doute). Et les gars chics qui utilisent (ou utilisaient) Perl sont généralement les gars qui décident de ce qui devrait faire partie d'une distribution Linux.
Quant à ce qui est pratique, Perl est toujours le ciment de beaucoup de choses: les OS et le web (encore une fois, LAMP, sans oublier ni Python ni PHP). Alors pourquoi ne pas inclure quoi que ce soit qui soit utile à de nombreuses fins? Et plus encore, pourquoi retirer tout ce qui est là (et qui ne cause aucun mal) et qui est utile?
Mais, en l'occurrence, il y a une note à ce sujet dans le dernier numéro de The Linux Magazine (# 151, juin 2013). Apparemment, afin de compiler le noyau Linux, quelques scripts Perl courts et simples sont utilisés. (Encore une fois, le rôle de "colle" de Perl dans les systèmes d'exploitation.) Maintenant, l'un des développeurs du noyau a soumis des correctifs de réécriture de ces scripts, cette fois pas en Perl, mais en tant que "scripts shell Unix" (est-ce que sh
?). De cette façon, Perl ne devrait pas être installé pour quiconque compile le noyau. Mais, ce correctif (soumis plusieurs fois) n'a pas été récupéré. Et une des raisons à cela est que, une fois dans le froid, Perl ne sera probablement pas laissé entrer. Des gens comme Perl, et ils ne veulent pas s'en séparer.
Maintenant, cela ne touche que les franges de cette question car probablement une très petite minorité d'utilisateurs Linux est susceptible de compiler le noyau. Mais c'est encore une autre pièce du puzzle (et je soupçonne qu'il y en a beaucoup).