Le code de Sorbet, un systÚme de vérification statique des types pour Ruby, est ouvert

L'entreprise Stripe, spécialisée dans le développement de plateformes pour les paiements en ligne, a ouvert les codes sources du projet Sorbet, dans le cadre duquel un systÚme de vérification statique des types a été préparé pour le langage Ruby. Le code est écrit en C++ et est distribué sous licence Apache 2.0.

Les informations sur les types dans le code peuvent ĂȘtre calculĂ©es dynamiquement, mais aussi spĂ©cifiĂ©es sous forme de simples annotations, qui peuvent ĂȘtre indiquĂ©es dans le code Ă  l'aide de la mĂ©thode sig (par exemple, «sig {params(x: Integer).returns(String)}») ou placĂ©es dans des fichiers sĂ©parĂ©s avec l'extension rbi. Il est possible de le faire Ă  l'avance une analyse de code statique sans son exĂ©cution, ainsi que de procĂ©der Ă  une vĂ©rification au fur et Ă  mesure de l'exĂ©cution (s'active en ajoutant dans le code «require ‘sorbet-runtime'»).

La possibilitĂ© de convertir progressivement des projets pour utiliser Sorbet — dans le code, il est possible de combiner des blocs typĂ©s avec annotations et des sections non typĂ©es non couvertes par le contrĂŽle. Parmi les caractĂ©ristiques, on note Ă©galement une trĂšs haute performance et la possibilitĂ© d'Ă©voluer pour des bases de code comprenant des millions de lignes de code.

Le projet comprend un noyau pour la vérification statique des types,
un outil pour crĂ©er de nouveaux projets utilisant Sorbet, un outil pour la conversion progressive de projets existants Ă  l'application de Sorbet, un runtime avec un langage orientĂ© objet pour Ă©crire des annotations de types et dĂ©pĂŽt des dĂ©finitions de types prĂȘtes Ă  l'emploi pour diffĂ©rents gems Ruby.

À l'origine, Sorbet a Ă©tĂ© dĂ©veloppĂ© pour vĂ©rifier les projets internes de l'entreprise Stripe, dont la majoritĂ© des systĂšmes de paiement et d'analyse sont Ă©crits en Ruby, et a Ă©tĂ© rendu open source aprĂšs un an et demi de dĂ©veloppement et d'implĂ©mentation. Avant l'Ă©dition du code, un bĂȘta-test a Ă©tĂ© rĂ©alisĂ©, avec la participation de plus de 30 entreprises. À l'Ă©tape actuelle de son dĂ©veloppement, Sorbet prend en charge le lancement de la plupart des projets standards en Ruby, mais certaines incompatibilitĂ©s peuvent ĂȘtre observĂ©es.

Source : opennet.ru

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster