Les expressions syntaxiques sont géniales! – Vers la science des données
La première et la plus évidente utilisation que tous les programmeurs de Julia connaissent probablement est l’utilisation d’expressions syntaxiques pour répartir les types de Julia dans différentes fonctions. Nous pouvons appliquer ce système à notre fonction de soustraction de cinq, par exemple:
Nous avons maintenant une fonction pour gérer la soustraction de cinq d’un entier, ainsi que la soustraction de cinq d’un tableau. Grâce aux expressions syntaxiques, nous pouvons répartir ces deux types sous la même méthode en fonction du type de variable que nous passons par cette méthode. Il s’agit d’une utilisation très pratique pour les expressions syntaxiques et est très couramment utilisée à l’intérieur du langage Julia.
Ce qui n’est pas aussi couramment utilisé dans la langue Julia, cependant, est la frappe de canard. À l’aide d’expressions syntaxiques, nous pouvons réellement manipuler le langage Julia pour taper davantage comme un langage de programmation orienté objet en créant des méthodes syntaxiques puis en les affirmant en tant qu’enfants d’un type.
Et nous pouvons utiliser ces méthodes comme nous le ferions dans un langage de programmation orienté objet similaire:
Mais les utilisations ne s’arrêtent pas là. Revenons un instant à nos racines et réfléchissons à la manière dont cela peut s’appliquer à l’apprentissage automatique. Bien sûr, il existe souvent des statistiques en ligne qui peuvent être faites, mais je pense qu’un bon exemple d’application de ce concept aux modèles est sigmoïde ou relu. Considérez cette fonction sigmoïde:
Bien que cette fonction soit certainement bonne et suffisamment concise pour vous obtenir le poste, je pense que le fait d’aller un peu plus loin avec une expression syntaxique affaiblira tout employeur bien plus qu’une fonction ordinaire ne le pourrait jamais:
Les expressions syntaxiques sont certainement l’une des plus grandes caractéristiques déterminantes de la programmation julienne. Non seulement ils rendent le langage incroyablement expressif et simple, mais ils forment également leur propre méthodologie entièrement en ayant quelques utilisations supplémentaires pour un opérande, ce qui est plutôt cool à mon avis. Les expressions syntaxiques sont la force motrice de la flexibilité multi-paradigme de Julia et fournissent à la langue plusieurs concepts clés qui ne sont parfois même pas génériques. Dans l’ensemble, cette syntaxe est certainement un gros avantage que j’ai apprécié d’avoir de mon côté à l’intérieur du langage de programmation Julia.