Crystal – obiektowy[2], statycznie typowany, kompilowany język programowania ogólnego przeznaczenia. Ma wieloplatformowe wsparcie, rozbudowaną biblioteką standardową, implementuje zielone wątki (nazywane tutaj fibers, z ang. włókna), pozwala na tworzenie makr a literały puste traktuje jako typ (wymagane jest sprawdzenie, czy obiekt nie jest pusty przed jego użyciem). W Crystalu biblioteki nazywane są „odłamkami” (ang. shards). Po skompilowaniu programu zawierającego biblioteki zostaje utworzony jeden monolityczny plik wykonywalny[3].
Prace nad językiem rozpoczęły się w czerwcu 2011 roku. Początkowo nadano mu nazwę Joy. Pierwsze oficjalne wydanie pojawiło się 18 czerwca 2014 roku[1]. Celem powstania Crystala było stworzenie języka, który jest szybki i zajmuje mało pamięci (tak jak języki C i C++) oraz jest czytelny, zwięzły oraz łatwy w debugowaniu (tak jak np. Python, czy Ruby). Jego składnia przypomina składnię Ruby’ego[3].
Do frameworków napisanych z wykorzystaniem języka Crystal należą m.in.: Amber, Kemal.cr oraz Lucky. Powstały także łączenia Crystala z bibliotekami takimi jak: Qt (qt5.cr) oraz libui (libui.cr)[3].
Przypisy