Szkolenie w Crystal


#1

Witajcie.

Aż dziwię się, że nie utworzyłem konta nigdy na tym forum, chociaż byłem nie raz.

W skrócie Crystal https://crystal-lang.org/ to nowy język programowania z dziedziny “nowoczesnych” (Rust, Go, Nim, …), czyli powrót do statycznych typów i kompilowania. Dzięki temu jest on znacznie szybszy i potrzebuje mniej pamięci. W tym momencie prawie cała moje open source’owa aktywność przeszła z Ruby na Crystal.

Mógłbym zaoferować regionalnym grupom zrobienie workshopa w celu budowania community i popularyzacji. Pierwszy zrobiłem w tym roku na Polyconfie http://polyconf.com/agenda/

W tym momencie Crystal najbardziej nadaje się do prostych aplikacji webowych oraz mocnego przetwarzania danych. Widzę w nim sens przy budowie API i jak dokończę pewne biblioteki to również mógłbym zrobić o tym workshop.

Prezentacja którą używałem na Polyconfie


#2

Język wygląda bardzo ciekawie. Sam koncept “połączenia” Ruby i C wygląda ciekawie, choć chyba już są podobne projekty. Oby coś z tego wyszło :slight_smile:


#3

Pomysły były już kiedyś aby przyspieszyć Ruby. Było to Rubinius oraz Maglev. Twórcy założyli sobie aby bez zmiany języka można zwiększyć wydajność. Gdzieś po drodze widziałem kompilacje do Pythona i dalej gdzieś, co dla mnie osobiście jest czymś dziwnym. Na tyle dziwnym, że nawet nie zapamiętałem szczegółów.

Crystal poszedł trochę ostrzej. Podjął “męską decyzję” o wprowadzeniu typów, które w praktyce “tak bardzo nie bolą”.

Jest to jeszcze alfa i dlatego niestety:

  • czasem są jeszcze breaking changes w changelogu, ale Rust miał te same problemy niedawno
  • popularność jest mała,
  • z tego powodu nikt nie robi dużych rzeczy - nie będzie od razu nowych Railsów bo nikt nie chce wkładać dużej ilości pracy gdy za chwilę może się coś pozmieniać
  • wiele magii z której słyną Railsy tutaj nie przejdzie

Z drugiej strony:

  • przynajmniej 5x szybszy
  • znacznie mniejsza ilość zużywanej pamięci i to może być większą zaletą niż CPU, a przynajmniej dla mnie było. Wyciskałem z Ruby wszystko co się dało w skryptach.
  • po rocznej przygodzie z bardziej ufam Crystalowi niż Ruby w kontekście tego co mógłbym wrzucić na produkcję

Słyszeliście o Go? Czy nie warto spróbować języka który ma zalety Go a składnie prawie identyczną do Ruby? Ja osobiście uważam, że z tego już wyszło sporo i nie powinniśmy (jako społeczność Ruby) bać się go i czekać.

We wrześniu lub październiku będę chciał poprowadzić workshop w Poznaniu. Jak już coś będzie wiadomo to dam znać.


#4

Cóż, mogę tylko zacytować samego siebie:

Dla mnie osobiście takim małym cichym zwycięzcą jest… crystal. Obserwuję ten język od dłuższego czasu i podoba mi się w jakim kierunku zmierza. Jaki to ma związek z Rubym? Taki, że język ten czerpie garściami z Rubiego (prawie identyczna składnia, ta sama ekspresyjność, bardzo podobne API), ale wprowadza też świeżość w postaci statycznego typowania oraz kompilacji do pliku wykonywalnego.