Byl zveřejněn kód Sorbet, systému pro statickou kontrolu typů pro Ruby.

Společnost Stripe, specializující se na vývoj platforem pro online platby, otevřela zdrojové kódy projektu Sorbet, v rámci něhož byla připravena systém statické kontroly typů pro jazyk Ruby. Kód je napsán v C++ a distribuováno pod licencí Apache 2.0.

Informace o typech v kódu mohou být vyhodnocovány dynamicky, a také mohou být určeny ve formě jednoduchých annotations, které mohou být uvedeny v kódu pomocí metody sig (například „sig {params(x: Integer).returns(String)}“) nebo umístěny v samostatných souborech s příponou rbi. Možný je jak předběžný statický analýza kódu bez jeho vykonávání, tak i kontrola při vykonávání (se aktivuje přidáním do kódu „require 'sorbet-runtime'“).

Je zajištěna možnost postupného přechodu projektů na využívání Sorbet – v kódu se mohou kombinovat jak anotované typy, tak i neanotované části, které nejsou kontrolovány. Zde je také poznamenána velmi vysoká výkonnost a možnost škálování pro kódové základny zahrnující miliony řádků kódu.

Součástí projektu je jádro pro statickou kontrolu typů,
nástroje pro vytváření nových projektů s využitím Sorbet, nástroje pro postupný přechod k použití Sorbet u existujících projektů, runtime s doménově orientovaným jazykem pro psaní anotací o typech a repuzitáře s hotovými definicemi typů pro různé gems balíčky na Ruby.

Sorbet byl původně vyvinut pro kontrolu interních projektů společnosti Stripe, většina platebních a analytických systémů je napsána v jazyce Ruby, a byl uvolněn jako open source po roce a půl vývoje a implementace. Před otevřením kódu bylo provedeno beta testování, kterého se zúčastnilo více než 30 společností. V aktuální fázi vývoje Sorbet podporuje spuštění většiny typových projektů na Ruby, ale mohou se vyskytnout speciální nekompatibility.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster