Fermer

juin 14, 2024

Tout ce que vous devez savoir sur Finch, le dernier langage de programmation développé par le MIT

Tout ce que vous devez savoir sur Finch, le dernier langage de programmation développé par le MIT



En mai, une équipe de recherche du MIT a annoncé un nouveau langage de programmation, Bouvreuil.

Il est conçu pour prendre en charge à la fois un flux de contrôle flexible et diverses structures de données. « Finch facilite un modèle de programmation qui résout les défis du calcul sur des tableaux structurés en combinant le flux de contrôle et les structures de données dans une représentation commune où ils peuvent être co-optimisés », déclarent ses créateurs.

A ne pas confondre avec la fintech suédoise du même nom (ou également, une autre langue du même nom), Finch propose un changement radical dans la façon dont les programmeurs peuvent aborder la programmation de tableaux structurés.

Les tableaux sont un élément fondamental de l’informatique et, avec les listes, ils constituent le fondement des structures de données. Universels dans tous les langages de programmation, les tableaux ont été introduits en Fortran en 1957 et sont encore utilisés aujourd’hui dans des langages comme Python, par exemple.

3 postes logiciels dans l’UE

« Les tableaux ont révolutionné la façon dont nous exprimons le calcul », déclarent les auteurs du langage. « Cependant, les tableaux de ces systèmes, et de presque tous les systèmes importants, ne peuvent gérer que des grilles entières rectilignes denses. Les tableaux du monde réel contiennent souvent une structure sous-jacente, telle que la parcimonie, les séries de valeurs répétées ou la symétrie. La prise en charge des données structurées est fragmentée et incomplète. Les frameworks existants limitent les structures de tableaux et le flux de contrôle des programmes qu’ils prennent en charge pour mieux simplifier le problème.

En raison de ce défi, Finch est conçu pour répondre aux limites des implémentations existantes.

Les sources sont d’accord« L’une des innovations clés de Finch réside dans la prise en charge d’une gamme riche et structurée langage de programmation. En proposant des constructions familières telles que des boucles for, des conditions if et des ruptures précoces sur des données structurées, Finch élève le niveau de productivité à celui des tableaux denses. Cela permet aux programmeurs de travailler avec des structures de données complexes sans sacrifier la puissance d’expression ou l’efficacité.

Parce qu’il est si nouveau, Finch est loin d’être largement compris et adopté. Étant spécialisé, il ne dispose pas encore d’une large communauté ni d’autant de ressources d’apprentissage que des langages plus généraux comme Python, qui prend également en charge la programmation de tableaux via des bibliothèques comme NumPy et SciPy​.

Alors pourquoi devrait-il développeurs apprendre à connaître la langue ?

C’est les auteurs disent que Finch propose « des structures de tableaux plus complexes que jamais auparavant. Nous sommes les premiers à étendre les descriptions hiérarchiques niveau par niveau pour capturer des ensembles de données en bandes, triangulaires, codés en longueur ou clairsemés, et toute combinaison de ceux-ci.

3 postes technologiques à explorer dans toute l’UE

Cas d’utilisation du pinson

En ce qui concerne ses cas d’utilisation, il dispose d’un large éventail d’implémentations. La capacité principale de Finch à gérer des tableaux clairsemés et structurés en fait un outil puissant pour un large éventail d’applications.

Il présente des avantages techniques dans des domaines tels que l’intégration des flux de contrôle. Parce qu’il inclut des techniques de compilateur avancées pour optimiser les calculs clairsemés, cela peut réduire les frais généraux et améliorer les temps d’exécution sur les plates-formes matérielles modernes.

Vous pouvez l’utiliser pour des implémentations dans la gestion de bases de données, le traitement d’images et de signaux, l’apprentissage automatique et la science des données, ou pour créer des algorithmes graphiques.

En fin de compte, votre décision d’apprendre dépendra de vos besoins. Si votre travail implique une utilisation importante de matrices clairsemées, de tableaux structurés ou de tâches de calcul haute performance, alors Finch peut être très bénéfique.

Si vous recherchez un langage plus généraliste avec une communauté plus large et une gamme d’applications plus large, d’autres langages pourraient mieux convenir.

Pour explorer des opportunités de carrière encore plus inspirantes, visitez le Site d’emploi de la Maison des Talents




Source link