Size: a a a

Сrystal Lang — русскоговорящее сообщество

2021 March 23

q1

qwerty 123 in Сrystal Lang — русскоговорящее сообщество
- можно рассказывать друзьям и девкам, шо работаеш на таинственном неизвестном языке
источник

AB

Aurel Branzeanu in Сrystal Lang — русскоговорящее сообщество
Artem F
Всем привет! Продолжите, пожалуйста, мой список ключевых фич, которые выгодно отличают Crystal от Go:
- Дженерики
- Безопасность нулевых указателей
- Исключения (сомнительное превосходство?)
- Макросы (тоже сомнительно, как по мне)
- Инлайн-интерполяция строк
- ...
Вменяемая работы с массивами

Итераторы

ООП (при условии разумного использования)

Макросы - всё-таки хороши тем, что предоставляют хоть какое-то мета-программироваине при компиляции
источник

AF

Artem F in Сrystal Lang — русскоговорящее сообщество
Aurel Branzeanu
Вменяемая работы с массивами

Итераторы

ООП (при условии разумного использования)

Макросы - всё-таки хороши тем, что предоставляют хоть какое-то мета-программироваине при компиляции
Каналы и спавны идентичны гошным каналам и горутинам?
Работа с раздеямой памятью есть, как в Го?
источник

AB

Aurel Branzeanu in Сrystal Lang — русскоговорящее сообщество
Artem F
Каналы и спавны идентичны гошным каналам и горутинам?
Работа с раздеямой памятью есть, как в Го?
источник

AP

Alexander Popov in Сrystal Lang — русскоговорящее сообщество
Artem F
Всем привет! Продолжите, пожалуйста, мой список ключевых фич, которые выгодно отличают Crystal от Go:
- Дженерики
- Безопасность нулевых указателей
- Исключения (сомнительное превосходство?)
- Макросы (тоже сомнительно, как по мне)
- Инлайн-интерполяция строк
- ...
Я бы скорость и stblib добавил, но плохо с Go знаком.
источник

AF

Artem F in Сrystal Lang — русскоговорящее сообщество
Alexander Popov
Я бы скорость и stblib добавил, но плохо с Go знаком.
Ну, Го пока вроде быстрей.
источник

AP

Alexander Popov in Сrystal Lang — русскоговорящее сообщество
Artem F
Ну, Го пока вроде быстрей.
Где-то видел, что Crystal обходит, но сейчас нашёл только обратное, да, те не помню как и где.
источник

AK

Andrey Konovalov in Сrystal Lang — русскоговорящее сообщество
Artem F
Всем привет! Продолжите, пожалуйста, мой список ключевых фич, которые выгодно отличают Crystal от Go:
- Дженерики
- Безопасность нулевых указателей
- Исключения (сомнительное превосходство?)
- Макросы (тоже сомнительно, как по мне)
- Инлайн-интерполяция строк
- ...
Очень простой для понимания язык, в котором сами его исходники являются неплохим набором примеров. При этом, в отличие от Go, можно "манкипатчить" любой аспект ядра языка за редким исключением. То есть если "ядро" языка работает не так, как хотелось бы - в Crystal это можно попытаться исправить, а в Go уже "не судьба".
В Crystal вызовы Си-библиотек - самые простые из всех известных мне ЯП. Правда, по этой причине среди шардов очень много "переходников" к сишным либам вместо полноценной замены на Crystal
источник

AF

Artem F in Сrystal Lang — русскоговорящее сообщество
Andrey Konovalov
Очень простой для понимания язык, в котором сами его исходники являются неплохим набором примеров. При этом, в отличие от Go, можно "манкипатчить" любой аспект ядра языка за редким исключением. То есть если "ядро" языка работает не так, как хотелось бы - в Crystal это можно попытаться исправить, а в Go уже "не судьба".
В Crystal вызовы Си-библиотек - самые простые из всех известных мне ЯП. Правда, по этой причине среди шардов очень много "переходников" к сишным либам вместо полноценной замены на Crystal
как насчет IDE и чем отлаживать?
источник

AK

Andrey Konovalov in Сrystal Lang — русскоговорящее сообщество
Вообще после Crystal синтакис почти 100% существующих ЯП вызывает, скажем так, недоумение. Ведь можно же было по-человечески-то, получается
источник

AK

Andrey Konovalov in Сrystal Lang — русскоговорящее сообщество
Artem F
как насчет IDE и чем отлаживать?
Я пишу в текстовом редакторе обычном, а отлаживаю puts'ами. Но вообще есть же отладчик для Crystal? Я не в курсе. Ни в одном языке никогда не использовал отладчики... ну ладно, за исключением разве что QuickBASIC в глубоком детстве :)
источник

AF

Artem F in Сrystal Lang — русскоговорящее сообщество
Andrey Konovalov
Я пишу в текстовом редакторе обычном, а отлаживаю puts'ами. Но вообще есть же отладчик для Crystal? Я не в курсе. Ни в одном языке никогда не использовал отладчики... ну ладно, за исключением разве что QuickBASIC в глубоком детстве :)
🤨
источник

AP

Alexander Popov in Сrystal Lang — русскоговорящее сообщество
Andrey Konovalov
Очень простой для понимания язык, в котором сами его исходники являются неплохим набором примеров. При этом, в отличие от Go, можно "манкипатчить" любой аспект ядра языка за редким исключением. То есть если "ядро" языка работает не так, как хотелось бы - в Crystal это можно попытаться исправить, а в Go уже "не судьба".
В Crystal вызовы Си-библиотек - самые простые из всех известных мне ЯП. Правда, по этой причине среди шардов очень много "переходников" к сишным либам вместо полноценной замены на Crystal
Ну, как автор PR для rand(Range) — подтверждаю, можно дополнить и оформить. С другой стороны — в других имплементациях ЯП тоже можно, просто в Crystal для этого достаточно знать один этот язык.
источник

AK

Andrey Konovalov in Сrystal Lang — русскоговорящее сообщество
Alexander Popov
Ну, как автор PR для rand(Range) — подтверждаю, можно дополнить и оформить. С другой стороны — в других имплементациях ЯП тоже можно, просто в Crystal для этого достаточно знать один этот язык.
Я ещё о переопределении методов классов
источник

AP

Alexander Popov in Сrystal Lang — русскоговорящее сообщество
Artem F
как насчет IDE и чем отлаживать?
Тоже подтверждаю: сегодня друг пожаловался на отсутствие auto-completion в редакторах, в scry и официальном плагине для VS Code issues застыли с 2018 года.
источник

AP

Alexander Popov in Сrystal Lang — русскоговорящее сообщество
Andrey Konovalov
Я ещё о переопределении методов классов
А, ну тут да, не скажу точно, не люблю такой подход, использую по минимуму.
источник

VF

Vlad Faust in Сrystal Lang — русскоговорящее сообщество
Ни дебаггера, ни профайлера. Можно использовать нативные типа LLDB, но у Кристала много наворочено в плане структуры программы, что это становится невыносимо больно
источник

VF

Vlad Faust in Сrystal Lang — русскоговорящее сообщество
Синтаксис проблемный; излишняя "рубишная" свобода типа необязательных скобок для вызова методов, require вместо import... Это вредит серьезным проектам
источник

AF

Artem F in Сrystal Lang — русскоговорящее сообщество
Vlad Faust
Ни дебаггера, ни профайлера. Можно использовать нативные типа LLDB, но у Кристала много наворочено в плане структуры программы, что это становится невыносимо больно
Это сразу раз в 10 снижает количество потенциальных пользователей
источник

VF

Vlad Faust in Сrystal Lang — русскоговорящее сообщество
Я знаю
источник