QUANTYS
Archives du bulletin Quantys

Bulletin d'information Quantys N° 2 : Spécial APL...
Le 10 mai 2000.

Depuis le premier avril 2000, la société Quantys est devenue revendeur du langage de développement Dyalog APL pour la France et le Benelux.
A cette occasion, nous consacrons ce numéro à ce langage, parfois décrié, mais aux nombreuses possibilités en ce qui concerne les calculs vectoriels et matriciels ...

Au sommaire de ce numéro vous trouverez :
1. Trucs et astuces VB.
2. Trucs et astuces en Dyalog APL.
3. Le langage APL.


1. TRUCS ET ASTUCES VB

Comment connaître le séparateur de décimales défini par l'utilisateur ?
Qui n'a pas connu le problème d'un programme fonctionnant très bien sur une machine et plantant sur une autre à cause d'un séparateur de décimales différent ?
Afin de contribuer à la paix entre les "pointeurs" et les "virguleurs", nous vous offrons une petite fonction qui permettra à votre application de savoir pour quel camp elle oeuvre ...

Function SéparateurDécimal() As String
' RESUME   : Rend le séparateur décimal utilisé
' ARGUMENT : Aucun
' SORTIE   : rend le séparateur décimal

    SéparateurDécimal = Mid(CStr(10 / 4), 2, 1)
   
End Function

Voici, avant de passer à APL, une autre fonction qui vous permettra simplement de gérer les divisions par zéro.

Function DivisionZéro(Numérateur As Double, Dénominateur As Double, Résultat) As Double
' RESUME   : Gérer la division par zéro
' ARGUMENT : Numérateur
'                      Dénominateur
'                      Résultat : Résultat à rendre en cas de division par zéro
' SORTIE   : Rend le résultat de la division. Si le dénominateur est égal à 0, alors le résultat est celui défini dans Résultat

    If Valeur2 = 0 Then
        DivisionZéro = Résultat
    Else
        DivisionZéro = Numérateur / Dénominateur
    End If

End Function

 

2. TRUCS ET ASTUCES Dyalog APL

Dans le cadre de notre toute nouvelle mission de diffuseurs de Dyalog APL en France et au Benelux, nous publierons régulièrement quelques utilitaires sur notre site.

Vous trouverez à l'adresse suivante
http://www.quantys.fr/produits/apl/faq/index.htm
la réponse à ces 2 questions :

- Comment savoir quelle application lancer pour ouvrir un fichier dont on ne connaît que l'extension ?
- Comment récupérer les séparateurs de décimales et de milliers ?

 

3. LE LANGAGE APL

S'il est un langage autour duquel la polémique a longtemps régné, c'est bien l'APL.
Il est régulièrement qualifié de langage exotique utilisant des caractères cabalistiques, de langage non structuré, de langage vieillot.
Il est vrai que chacune de ses instructions est exprimée en 1 caractère. Cette originalité est due au fait qu'APL s'est inspiré de la notation mathématique et dans ce domaine, on utilise plus de signes que de mots...
La vraie puissance d'APL réside dans sa capacité à exprimer simplement une idée simple.

Soit une matrice MAT de 3 colonnes et n lignes contenant des commandes.
Les colonnes contiennent un nom, une quantité et un prix unitaire.

On peut obtenir instantanément le montant de toutes les commandes par l'expression suivante :
MONTANTS MAT[;2] x MAT[;3]

On peut également coller cette nouvelle colonne ainsi :
MAT MAT, MAT[;2] x MAT[;3]

Si on veut le chiffre d'affaires total on peut écrire :
TOTAL +/MAT[;4]

Et pour conclure, pour augmenter les tarifs de 10% il aurait suffit d'écrire :
MAT[;3 4] MAT[;3 4] x 1.1

Le professionnel qui veut écrire lui même ses outils trouve ici un moyen rapide de mettre ses connaissances fonctionnelles en oeuvre sans s'empêtrer dans des problèmes de boucles et autres réjouissances informatiques.

Il existe également des opérateurs permettant au choix :
- de résoudre instantanément n équations à n inconnues,
- de générer et d'exécuter dynamiquement du code,
- d'inverser ou de transposer une matrice

Toutes les actions sont possibles dans tous les axes, ceux-ci n'étant évidemment pas limités à 2.

Parmi les APL du marché Dyalog s'est détaché par une parfaite intégration au sein de l'environnement Windows et le fait qu'il tourne également sur les plates formes UNIX et bientôt LINUX.

Pour en savoir plus :
http://www.quantys.fr/produits/apl

M.R.