perl est un langage interprété (avec une phase interne de pré-compilation) optimisé pour traiter des fichiers texte, mais qui peut également être utilisé pour diverses tâches d'administration-système.
Sa syntaxe s'inspire très largement de celles de C, awk, sed et sh, ce qui rend son apprentissage très facile pour toute personne ayant un peu d'expérience avec ces outils.
Il n'y a aucune limitation sur la taille des données ou sur leur contenu (une chaîne peut contenir le caractère nul, et la gestion de la mémoire qu'elle utilise n'est pas à la charge du programmeur).
Une option sur les scripts en setuid permet de prévenir beaucoup de trous de sécurité ( PATH incorrect, ...).
Une grande quantité de modules déjà disponibles permet de développer rapidement des applications touchant à des domaines divers (CGI, Tk, Gtk, Msql, POSIX, Curses, NNTP, ...).
Son utilisation touche divers domaines : traitement de fichiers texte, extraction d'informations, écriture de scripts d'administration-système, prototypage rapide d'applications, etc...
Un autre des ses avantages est qu'il permet d'écrire rapidement des applications puissantes qui peuvent tourner immédiatement sur plusieurs plates-formes différentes. Son utilisation va donc du prototypage rapide d'applications au développement complet de programmes divers.