Après le lancement d'une version open source du langage en juin 2019, l’équipe de développement du langage de programmation V vient de publier la version 0.2 du langage, qui constitue la première version majeure du langage. Dans cette version, l'équipe a mis principalement l'accent sur la stabilité et la gestion de la mémoire au moment de la compilation. Toutefois, plusieurs autres nouvelles fonctionnalités ont été introduites par Vlang 0.2, dont les canaux et les serrures (channels and locks), les flux d'entrée/sortie (E/S), l'incorporation structurelle, etc.Qu'est-ce que le langage de programmation V et quelles sont ses aspirations ?
Le langage de programmation a été créé par Alex Medvedniko, un développeur néerlandais qui dit s'être énormément attaché à la simplicité et à la performance. Selon Alex, tout ce que vous pouvez faire avec les autres langages existants est également faisable avec V. Alex a indiqué avoir créé le langage V pour mener à bien son projet Volt. En parlant de Volt, il fait référence à un client de bureau natif pour Slack, Skype, Matrix, Telegram, Twitch et de nombreux autres services. Volt vous évite d'avoir recours à une douzaine d'applications pour atteindre tous vos contacts sur différentes plateformes.
Lors de la présentation du langage V en mars 2019, Alex a indiqué qu’il dispose de nombreuses caractéristiques qui attirent le plus souvent les développeurs, dont sa rapidité et sa sécurité, sa légèreté et sa capacité à traduire l’entièreté de vos projets C/C++. Il a ajouté que la totalité du langage V et sa bibliothèque standard sont inférieures à 400 Ko. La documentation de V renseigne aussi qu'il peut compiler jusqu’à 1,2 million de lignes de code par seconde par cœur de processeur. Avant sa sortie publique, un accès anticipé avait été offert au mois de mai pour ceux qui ont rejoint la communauté du langage comme membre premium.
À sa publication en tant que projet open source en juin 2019, Alex et les autres développeurs ont indiqué que V respecte son engagement, en restant un langage simple, rapide, sûr et compilé pour les développeurs de logiciels maintenables. Le langage a été lancé en open source avec les caractéristiques telles qu’une compilation rapide du code écrit en V, la sécurité du langage, un traducteur C/C++, un rechargement à chaud du code pour prendre en compte instantanément les modifications et une taille très minime d’environ 400 Ko, car elle ne contient pas de dépendances.
Outre cela, la documentation de V indique qu'il est semblable à Go (Golang), un langage de programmation développé par Google et dont la première version remonte à novembre 2009. V est également influencé par Oberon, Rust et Swift. Côté performance, l’équipe estime que V est aussi rapide que le C, tout en proposant une interopérabilité avec ce dernier.
Les nouvelles fonctionnalités/améliorations introduites par la version 0.2 de V
La fonctionnalité la plus mise en avant par les développeurs de V dans cette version du langage est la gestion de la mémoire. En effet, la gestion de la mémoire est un aspect d'un langage qui a l'une des plus grandes influences sur la façon dont il se comporte : elle affecte le système de types et les types de types que vous pouvez avoir, elle affecte l'efficacité dans le temps et dans l'espace, elle affecte le modèle cognitif du programmeur dans lequel les structures de données peuvent être représentées, etc. En outre, elle affecte la latence, l'interopérabilité, et bien plus encore.
Mais il semble être souvent ignoré et presque invisible en même temps. Beaucoup de développeurs considèrent qu'il s'agit d'un problème "résolu", puisque probablement 95 % des langages de programmation utilisent une forme quelconque de ramasse-miettes : il faut allouer, puis se préoccuper de récupérer les objets inaccessibles plus tard. Selon certains, le problème est peut-être que pendant très longtemps, les alternatives n'ont pas été très nombreuses. Les langages de bas niveau utiliseraient une gestion manuelle de la mémoire (efficace, mais sujette aux erreurs), et certaines ont utilisé le comptage des références.
Puis il y a eu les langages basés sur des types ou des régions linéaires, mais celles-ci ne sont jamais entrées dans le courant dominant. En gros, c'est un aspect plus qu'important dans la construction d'un langage de programmation. La gestion de la mémoire est d'ailleurs l'une des...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.

