WEB2007 ALSO SPEAKS ENGLISH
06 44 00 14 84 (ou 0033644001484)

* Agence Typo3 Nantes




* Agence Typo3 Nantes





Article:

La syntaxe abstraite contrarie la syntaxe concrète dans la définition formelle en langages de programmation. Quand la syntaxe concète désigne les suites de caractères que l'utilisateur doit taper, la syntaxe abstraite tend à accorder une structure aux données entrées, évoquant au passage la façon de les stocker en mémoire.
Exemplairement, étudiant une expression arithmétique dont la syntaxe concrète est 3*x+5, sa syntaxe abstraite pourra être un arbre dont la racine est un nœud +, de branche gauche un nœud * (ayant comme branche les feuilles 3 et x), de branche droite une feuille 5.
La syntaxe abstraite et sa relation avec la syntaxe concrète, en langages de programmation, est fréquement le plus donné par une grammaire hors-contexte en forme de Backus-Naur.
Il est significatif que la famille de langages Lisp fait converger la syntaxe abstraite et la syntaxe concrète de forme à les rendre indéfinissables pour le programmeur. Effectivement, les langages Lisp se déterminent par l'utilisation des s-expressions pour la représentation littérale (syntaxique) du code source. Néanmoins en assemblant des s-expressions, on obtient la représentation littérale d'un arbre de syntaxe, dont la traduction en arbre syntaxique abstrait est immédiate. Cette convergence permet d'ajouter à ces langages les macros, autrement dit, des opérateurs accomplissant des transformations de source à source, ce qui permet de créer de nouveaux opérateurs sans altérer la définition du langage ni modifier le compilateur.
Une syntaxe concrète pour spécifier une valeur non primitive et spécifique à son genre indique un compositeur. Plusieurs langages présentent des compositeurs pour les conteneurs (tableaux, tables associatives...). Plus rares sont les langages qui proposent une syntaxe concrète pour d'autres type d'objets, évitant ainsi l'utilisation exp de constructeurs. Une forme spéciale de compositeur est l'interpolation de chaîne.
Globalement,ununiligne (one liner pour les anglophones) est un programme informatique jetable, pourtant 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 prescrivent plusieurs phases avant l'exécution, la déclaration exp de variables, de fonctions ou, pire, de classes, ne se prêtent pas aux unilignes. Les unilignesbénificient des qualités DWIM (Do What I Mean) et DRY (Don'tRepeatYourself) propres à certains langages.
Puisqu'ununiligne est guère consacré à être réutilisé, les considérations de lisibilité par un tiers sont secondaires. Certainsunilignes sont des assombrissements délibérés. Toutefois, 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.






* Web2007 est le site d'un informaticien indépendant qui peut et veut travailler à distance pour des entreprises partout en Europe.
Dans les métiers du web, la proximité n'est pas obligatoire, la nouvelle technologie ( vidéo conférence Skype, Whatsapp, etc... ) nous permet d'être virtuellement juste à coté et de se voir, bienvenue dans le monde du futur !
Et surtout votre site internet n'est pas près de vous mais sur un serveur virtuel distant, donc la proximité n'est pas importante.
Pour info, j'habite personnellement à Gaillard-Haute Savoie et mon bureau est juste à coté à Genève-Suisse.