Perl neden çoğu Linux dağıtımında varsayılan olarak kurulur?
Perl neden çoğu Linux dağıtımında varsayılan olarak kurulur?
Yanıtlar:
Cevap, bakış açınıza bağlı olarak seksi değil / değil.
Perl çok kullanışlıdır. Sistem yardımcı programlarının çoğu perl ile yazılmış veya buna bağlı. Perl kaldırılırsa çoğu sistem düzgün çalışmaz.
Birkaç yıl önce FreeBSD, Perl'i temel sisteme bağımlılık olarak kaldırmak için büyük çaba harcadı . Kolay bir iş değildi.
Larry Wall yılında orijinal Perl v1.0 gönderme için comp.sources.misc 18 Aralık 1987 tarihinde haber, şöyle dedi:
Normalde sed veya awk veya sh kullanacak bir probleminiz varsa, ancak bu onların yeteneklerini aşıyorsa veya biraz daha hızlı çalışmalı ve C'ye aptalca bir şey yazmak istemiyorsanız, perl sizin için olabilir.
Bir de çok sonra fuar , o biraz daha özenli:
Fakat Unix'in kabuk programlamasındaki sıkıntılar doğrudan anlatmak için zamanım olmadığı Perl'in yaratılmasına yol açtı. Fakat esasen, kabuk komut dizisinin fiillerinin çoğunun kontrol altında olmadığı ve bu nedenle birbiriyle büyük ölçüde tutarsız olduğu gerçeği ile sınırlı olduğunu buldum. Ve isimler yoksullaştırılmış, dizelerle ve dosyalarla sınırlandırılmış, kim bilir ne tipolojiyle ...
Daha yıkıcı olan, tek boyutlu bir evren olduğunun zihniyetiydi: ya C de programladınız ya da kabuk programladınız, çünkü açıkça One True Continuum'un zıt uçlarındalar. Senaryo yazımının her zaman programlamanın karşıtı olarak görülmek zorunda olmadığını, ancak tek bir dilin her ikisi için de iyi olabileceğini fark ettiğimde Perl ortaya çıktı. Bu çok büyük bir ekolojik niş açtı. Birçoğunuz eski kapaklı diyagramımı, iki yönlülük ve kırbaçlık boyutuyla gördünüz.
Bugün Perl, kabuk komut dosyası yazma ve metin ayrıştırma ihtiyaçları için ve geleneksel araçlardan çok daha fazla güce sahip standart bir alternatiftir. Aşırı (bazıları inelegant diyebilir) esnekliği nedeniyle Perl, " İsviçre Ordusu'nun betik dilleri testeresi " olarak tanımlandı . Görevler, Perl ile çözüldüğünde genellikle daha kısa, kolay veya genişletilebilir olabilir. Birçok sistem aracı, komut dosyası ve daha büyük program, Perl'de rutin olarak yazılmıştır. Öyleyse, modern Linux ortamında, Perl şimdi başka bir standart Unix aracı ve gerçekten vazgeçilmezdir.
awk
, sed
içinde ve içinde arayabilirsiniz (Perl).Bence bu sorunun cevabı kısmen tarihi, kısmen pratik.
Tarih gelince, Perl klas bir dildir. Python'dan daha şık (PHP'den bahsetmiyorum), "neyin daha iyi" olduğu hakkında hiçbir fikrim olmasa da (eğer bir şekilde resmi olarak analiz edilebilirse, şüpheliyim). Ve Perl'i kullanan (veya kullanılan) klas adamlar tipik olarak Linux dağıtımının bir parçası olması gerektiğine karar verenler.
Pratik olana gelince, Perl olan işletim ve (yine LAMP, Python ya da PHP unutmadan) hem web: şeylerin bir sürü tutkal hala. Öyleyse neden birçok amaç için yararlı bir şey eklemiyorsunuz? Ve hatta dahası, neden var olan (ve herhangi bir zarar vermeyen) ve yararlı olan herhangi bir şeyi kaldırın
Ancak, olduğu gibi, Linux Dergisi'nin son sayısında (# 151, Haziran 2013) bununla ilgili bir not var. Anlaşılan, Linux çekirdeğini derlemek için birkaç kısa ve basit Perl betiği kullanılmıştır. (Yine, Perl’in işletim sistemlerinde “tutkal” rolü.) Şimdi, çekirdek geliştiricilerinden biri, bu betiklerin yeniden yazmak için yamalar yapıyor, bu kez Perl’de değil, “Unix kabuk betikleri” olarak sh
?). Bu şekilde, Perl'in çekirdeği derleyen kimseye kurulmasına gerek kalmayacaktı. Ancak, bu düzeltme eki (birkaç kez gönderilmiş) alınmamıştır. Ve bunun bir nedeni, soğukta bir kez dışarı çıkınca Perl'in içeri girmesi pek mümkün değildir. Perl gibi insanlar ve onunla ayrılmak istemiyorlar.
Şimdi, bu yalnızca Linux kullanıcılarının çok küçük bir azınlığının çekirdeği derleyebileceği için bu sorunun saçmalıklarına değiniyor. Ancak yapbozun bir başka parçası (ve çok fazla olduğundan şüpheleniyorum).