Koden til Sorbet, et system til statisk typekontrol for Ruby, er åbnet

Stripe, et selskab der specialiserer sig i udvikling af platforme til online-betalinger, åbnet projektets kildekoder Sorbet, hvormed der er udviklet et system til statisk typeskanning for Ruby-sproget. Koden er skrevet i C++ og distribueres er under Apache 2.0-licensen.

Typeinformation i koden kan beregnes dynamisk og kan også angives i form af simple annoteringer, som kan angives i koden ved hjælp af metoden sig (for eksempel "sig {params(x: Integer).returns(String)}") eller placeres i separate filer med udvidelsen rbi. Mulighederne for både forudgående statisk kodeanalyse uden udførelse, såvel som kontrol under udførelse (aktiveres ved at tilføje "require 'sorbet-runtime'" til koden).

Der er mulighed for trinvist at konvertere projekter til brug af Sorbet — i koden kan der kombineres både typede blokke med annoteringer og utypede sektioner, der ikke er dækket af kontrol. Blandt de bemærkelsesværdige funktioner er også meget høj ydeevne og mulighed for skalering for kodebaser, der inkluderer millioner af linjer kode.

Projektet omfatter en kerne til statisk typeskanning,
værktøjer til at oprette nye projekter ved hjælp af Sorbet, værktøjer til gradvis at konvertere eksisterende projekter til brug af Sorbet, runtime med et domænespecifikt sprog til at skrive annoteringer om typer og repository færdige type-definitioner for forskellige Ruby-gems.

Sorbet blev oprindeligt udviklet til at kontrollere virksomhedens interne projekter hos Stripe, hvor størstedelen af betalings- og analyzesystemerne er skrevet i Ruby, og blev åbnet som open source efter halvandet års udvikling og implementering. Forud for åbningen blev der udført beta-test, hvor over 30 virksomheder deltog. I den nuværende udviklingsfase understøtter Sorbet opstart af de fleste standardprojekter i Ruby, men der kan observeres enkelte inkompatibiliteter.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster