Sorbet, sistema ta 'kontroll tat-tip statiku għal Ruby, hija ta' sors miftuħ.

Kumpanija Stripe, li tispeċjalizza fl-iżvilupp ta’ pjattaformi għall-ħlasijiet onlajn, miftuħa kodiċi tas-sors tal-proġett xerbett, li fiha ġiet ippreparata sistema ta' verifika tat-tip statiku għal-lingwa Ruby. Il-kodiċi huwa miktub f'C++ u imqassma minn liċenzjat taħt Apache 2.0.

L-informazzjoni dwar it-tipi fil-kodiċi tista 'tiġi kkalkulata b'mod dinamiku, u tista' wkoll tiġi speċifikata fil-forma ta 'sempliċi annotazzjonijiet, li jistgħu jiġu speċifikati fil-kodiċi bl-użu tal-metodu sig (per eżempju, "sig {params(x: Integer).returns(String)}") jew imqiegħda f'fajls separati bl-estensjoni rbi. Disponibbli bħala preliminari analiżi tal-kodiċi statiku mingħajr ma tesegwixxiha, u tiċċekkja kif tiġi esegwita (jixgħel billi żżid "jeħtieġu 'sorbet-runtime'" mal-kodiċi.

Possibbiltà pprovduta traduzzjoni gradwali proġetti għall-użu Sorbet - il-kodiċi jista 'jgħaqqad kemm blokki ittajpjati annotati u żoni mhux ittajpjati mhux koperti mill-verifika. Il-karatteristiċi jinkludu wkoll prestazzjoni għolja ħafna u l-abbiltà li tiskala għal bażijiet ta 'kodiċi li fihom miljuni ta' linji ta 'kodiċi.

Il-proġett jinkludi għadma għall-iċċekkjar tat-tip statiku,
sett ta' għodod għall-ħolqien ta' proġetti ġodda bl-użu ta' Sorbet, sett ta' għodod għat-trasferiment pass pass ta' proġetti eżistenti biex juża Sorbet, runtime b'lingwa speċifika għad-dominju għall-kitba ta' annotazzjonijiet dwar tipi u repożitorju b'definizzjonijiet tat-tip lesti għal diversi pakketti tal-ħaġar prezzjuż Ruby.

Inizjalment, Sorbet ġie żviluppat biex jiċċekkja proġetti interni tal-kumpanija Stripe, li ħafna mis-sistemi ta 'ħlas u analitiċi tagħhom huma miktuba fil-lingwa Ruby, u ġie trasferit għall-kategorija ta' sors miftuħ wara sena u nofs ta 'żvilupp u implimentazzjoni. Qabel ma fetaħ il-kodiċi, sar beta testing, li fih ħadu sehem aktar minn 30 kumpanija. Fl-istadju attwali ta 'żvilupp, Sorbet jappoġġja t-tnedija tal-biċċa l-kbira tal-proġetti standard f'Ruby, iżda jista' jkun hemm xi inkompatibilitajiet.

Sors: opennet.ru

Żid kumment