La mise à niveau du langage en anneau se concentre sur WebAssembly

Une mise à niveau prévue du langage de programmation Ring à plusieurs paradigmes, version 1.13, devrait inclure des hébergements WebAssembly.

Dû en septembre, la mise à niveau de Ring 1.13 prend en charge Qt pour WebAssembly, un plug-in de plate-forme permettant de créer des applications Qt pouvant être intégrées dans des pages Web. WebAssembly fournit un format binaire rapide et compact qui permet des performances quasi natives pour les applications Web.

Ring utilise Qt comme bibliothèque GUI standard, via la liaison RingQt. Ring 1.13 prend en charge l'exportation d'un projet Ring en tant que projet Qt qui inclut l'application Ring compilée dans un fichier objet Ring, ainsi que la machine virtuelle Ring. Ensuite, le projet est construit pour WebAssembly ou mobile à l'aide de l'IDE Qt Creator.

Ring 1.13 devrait également présenter une foule d'autres améliorations:

  • L'organisation a été améliorée pour les dossiers de projet et les fichiers de code source. Un dossier Language contient le code source et la source visuelle du compilateur et de la machine virtuelle. Il existe également des dossiers pour les bibliothèques, les extensions, les outils et les exemples.
  • D'autres fonctions de bas niveau ont été ajoutées.
  • Une nouvelle extension prend en charge la bibliothèque stb_image.
  • Un support amélioré est offert pour RingRayLib, une extension de la bibliothèque de programmation de jeux RayLib. Toutes les fonctions renvoient désormais des objets au lieu de pointeurs et la prise en charge est offerte pour les fonctions de la bibliothèque RayMath.

Initialement publié en janvier 2016 par le développeur Mahmoud Fayed, Ring est un langage à usage général prenant en charge des paradigmes comprenant impératif, procédural, orienté objet, fonctionnel et déclaratif. La programmation en langage naturel est également prise en charge. Les programmeurs disposent d'outils pour créer un langage naturel ou déclaratif. Des langages spécifiques au domaine peuvent être créés. L'architecture Ring comprend une machine virtuelle écrite en C.

Disponible à partir de GitHub pour Windows, MacOS et Linux, le langage Ring peut être utilisé pour les types d'applications, notamment l'interface graphique, le Web, le mobile, la console et les jeux. Parmi les langages cités comme influençant Ring, on trouve Lua, Python, C et Ruby. La version stable actuelle est Ring 1.12.