Labview
Principes
Le langage G
Le langage G se base sur le principe du flot de données, auquel ont été rajoutées des structures de programmation afin d'obtenir un langage de programmation complet.
Un diagramme flot de données permet d'exprimer une fonction de manière graphique. Un tel diagramme est composé de :
- Terminaux : ce sont les entrées (rectangle gras) et les sorties (rectangle fin) de la fonction,
- Noeuds : ils définissent les opérations à effectuer. Nous verrons plus loin que ces opérations peuvent être des fonctions déjà mise au point. Ces noeuds sont représentés par un carré contenant une image qui sert à illustrer leur fonctionnalité,
- Arc orientés : ils servent à relier les noeuds et les terminaux entre eux pour indiquer le chemin des données. Par convention, ces arcs sont orientés de gauche à droite,
- Jetons : ils représentent les données transitant sur les arcs. Ils sont représentés par des points.
Des règles d'évolution permettent de faire évoluer ce diagramme :
- A l'initialisation, les terminaux d'entrée produisent chacun un jeton,
- Lorsqu'un noeud possède un jeton sur chacun de ces arcs entrant, et seulement dans ce cas, le noeud peut être exécuté : chaque jeton en entrée est consommé et le noeud produit un jeton sur chacun de ses arcs sortants.
Un diagramme flot de données peut être encapsulé afin d'être réutilisé, en tant que noeud (fonction), par d'autres diagrammes flot de données. Les terminaux du diagramme deviennent alors les entrées/sorties du noeud.
Le diagramme de la figure suivante exprime le calcul de d = a + b * (b - c) et de e = b - c.

Le langage G implémente la notion d'encapsulation des données qui consiste à représenter un ensemble d'opérations par un noeud, donc de définir des fonctions et des sous-fonctions. Pour le diagramme précédent, le noeud d'encapsulation possèdera 3 entrées a, b et c et deux sorties d et e.