Concept

Uniligne

Résumé
Un uniligne (one liner pour les anglophones) est généralement un programme informatique jetable, mais peu banal, écrit pour une tâche ponctuelle en un langage de script tel que Perl ou Ruby, et tenant sur une seule ligne. Des langages qui imposent plusieurs phases avant l'exécution, la déclaration explicite de variables, de fonctions ou, pire, de classes, ne se prêtent pas aux unilignes. Les unilignes bénéficient des qualités DWIM (Do What I Mean) et DRY (Don't Repeat Yourself) propres à certains langages. Parce qu'un uniligne est rarement destiné à être réutilisé, les considérations de lisibilité par un tiers sont secondaires. Certains unilignes sont des assombrissements délibérés. En revanche, ils peuvent être pédagogiques en démontrant de manière concise certains idiotismes du langage. Il faut néanmoins savoir que certains idiotismes deviennent inapplicables ou dangereux dans le cadre de programmes avec beaucoup de lignes de code. Le mot est apparu pour la première fois dans le livre de Alfred V. Aho, Peter J. Weinberger et Brian W. Kernighan, The AWK Programming Language. Ce livre a pour sujet le langage Awk, utilisé dans le système d'exploitation Unix. Les auteurs expliquent comment leur travail quotidien sur Unix fut à l'origine de ce paradigme : « La version de 1977 d'[Unix] possédait très peu de variables internes et de fonctions prédéfinies. Elle est conçue pour écrire des programmes courts [...] Notre modèle était qu'un appel de fonction serait long d'une ou deux lignes, exécutées sitôt tapées. [...] Nous, en tant qu'auteurs, « savions » comment le langage était censé être utilisé, et c'est pour cela que nous n'écrivions que des unilignes. » Le livre The AWK Programming Language contient plus de vingt exemples à la fin du premier chapitre. Voici les premiers :
  1. Afficher le nombre total de lignes lues en entrée : END { print NR }
  2. Afficher la dixième ligne d'un fichier : NR == 10
À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.