The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск языка программирования Crystal 1.6"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск языка программирования Crystal 1.6"  +/
Сообщение от opennews (??), 17-Окт-22, 13:59 
Опубликован релиз языка программирования Crystal 1.6, разработчики которого пытаются совместить удобство разработки на языке Ruby с высокой производительностью приложений, свойственной языку Си. Синтаксис Crystal близок к языку Ruby, но не полностью совместим с ним, несмотря на то, что без переработки выполняются некоторые ruby-программы. Код компилятора написан на языке Crystal и распространяется под лицензией Apache 2.0...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=57926

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от Аноним (1), 17-Окт-22, 13:59   –5 +/
Этим кто-то пользуется? Кажется оно ещё мертвее Ruby
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #2, #3, #11, #18

2. Сообщение от Аноним (2), 17-Окт-22, 14:15   +3 +/
я

я им пользуюсь

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #45

3. Сообщение от Аноним (3), 17-Окт-22, 14:24   –2 +/
Manas Technology Solutions, 84 codes, Nikola Motor Company, PlaceOS.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #7

4. Сообщение от penetrator (?), 17-Окт-22, 14:25   –11 +/
удобство разработки на языке Ruby

поржал

Ответить | Правка | Наверх | Cообщить модератору

7. Сообщение от Анонус (?), 17-Окт-22, 14:57   +9 +/
>Nikola Motor Company

Это которая макеты электрогрузовиков под горку катала?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #56

9. Сообщение от Аноним (9), 17-Окт-22, 15:14   –1 +/
Да этим только легаси ускорять.
Ответить | Правка | Наверх | Cообщить модератору

11. Сообщение от YetAnotherOnanym (ok), 17-Окт-22, 16:06   +3 +/
Лишь бы ты им не пользовался. А то ныть начнёшь "сделайте мне то, добавьте мне это, как я привык в том одном-единственном языке, который сумел осилить".
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

12. Сообщение от inferrna (ok), 17-Окт-22, 16:10   +/
Версия 1.6
>Изменена логика перегрузки

В нормальных языках такое делают или в версии 0.х, или в отдельной мажоронй ветке. А тут кто-то через полгода из реп накатит, а потом будет попу вазелином мазать.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #19, #37, #50

14. Сообщение от Skullnetemail (ok), 17-Окт-22, 16:24   +/
Хороший язык программирования, но его не распиарили так как Go.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #17, #55

17. Сообщение от Имя (?), 17-Окт-22, 16:48   –3 +/
А какова его "фишка"?
Golang позиционировался изначально, одна задача - одно решение.
А здесь одна задача и тысяча и одна ночь на решение (выбор одного решения из тысячи).
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14 Ответы: #30, #49

18. Сообщение от Аноним (18), 17-Окт-22, 16:55   +3 +/
Я пользуюсь
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #47

19. Сообщение от iiiypuk (?), 17-Окт-22, 16:57   –2 +/
Такие вещи там грамотно проектрируют.

Я компилировал код с фичами из новых версий старым компилятором и ничего не ломалось.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12 Ответы: #57

30. Сообщение от Аноним (-), 17-Окт-22, 18:13   +2 +/
то есть ты не знаешь фишку, но берешься судить. классика опеннета
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #17 Ответы: #36

34. Сообщение от Аноним (-), 17-Окт-22, 18:38   +/
Макросыыы.. а идея была непло.. а что за идея была ? Сделать руби ? Почти получилось
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #39

36. Сообщение от lflfl (?), 17-Окт-22, 19:06   +2 +/
Ну тыж не рассказываешь.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30

37. Сообщение от Аноним (37), 17-Окт-22, 19:06   +4 +/
Когда у языка пользователей целое ничего, это не имеет значения.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12

38. Сообщение от Аноним (38), 17-Окт-22, 19:30   +/
Разве из помеси питона с паскалем может получиться что-то хорошее?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #40

39. Сообщение от Аноним (39), 17-Окт-22, 19:31   +/
Идея была сделать руби со статической типизацией (и соответственно настолько быстрый насколько позволит LLVM).
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #34

40. Сообщение от Аноним (39), 17-Окт-22, 19:31   +/
Это про Nim. Crystal это скорее помесь С с Ruby.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38

41. Сообщение от Golangdev (?), 17-Окт-22, 19:52   –1 +/
Есть ли интероперабельность с C ?

Т. е. могу ли я в Crystal заюзать любую C либу, как в Kotlin любую Java-либу ?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #42, #43, #46

42. Сообщение от kipar (?), 17-Окт-22, 20:13   +/
Интероперабельность с С есть почти у всех языков. Во всяком случае, с бекендом LLVM для этого особых усилий не надо - просто скорми линкеру сишные библиотеки.
Вопрос только в том насколько хорош автоматический конвертер заголовков для этого языка. У кристалла он с одной стороны неплохой (библиотеки типа GSL или LAPACK я конвертил с минимумом ручных правок), а с другой - эээ, слегка мертвый? судя по https://github.com/crystal-lang/crystal_lib/issues/2 есть какой-то альтернативный скрипт, но я его завести так и не смог, так что пользуюсь бинарником конвертера скомиленным еще три года назад.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41

43. Сообщение от Аноним (43), 17-Окт-22, 20:26   +/
Нет конечно. Потому что из jar-файла Kotlin может прочитать все классы, интерфейсы и методы со всеми типами. А вот из C-библиотеки ничего кроме имени функции автоматически не получишь. Ни аргументов, ни типов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41 Ответы: #51

45. Сообщение от Аноним (45), 17-Окт-22, 21:21   –1 +/
Why people leaving crystal?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

46. Сообщение от Аноним (46), 17-Окт-22, 22:20   –2 +/
Carbon, разумеется.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41 Ответы: #60

47. Сообщение от Hck3r (?), 17-Окт-22, 22:24   +/
А для чего?
Web?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #61

49. Сообщение от Skullnetemail (ok), 18-Окт-22, 01:13   +/
> А какова его "фишка"?

Нормальная стандартная библиотека, а не как в СИ. Возможность компилировать код в бинарник.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #17

50. Сообщение от Аноним (50), 18-Окт-22, 01:46   +/
Это, кстати, хрень какая-то же.
Более частное теперь менее специфично, чем более общее.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12

51. Сообщение от Аноним (50), 18-Окт-22, 01:47   +1 +/
А хедеры на что?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #43 Ответы: #53, #67

53. Сообщение от Аноним (53), 18-Окт-22, 02:53   +/
Внезапно, для С-компилятора.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51 Ответы: #63

55. Сообщение от leap42 (ok), 18-Окт-22, 05:52   +/
> Хороший язык программирования, но его не распиарили так как Go.

И кто пиарит Go? Только не говорите Google, эти Go не любят, проекты на нём не пиарят, не одабривают его использование для своих проектов. Как докажу? Ну во-первых об этом говорят многие гуглеры, а во-вторых крупных проектов на Go, которые Google бы поддерживал, пиарил и продвигал, нет вообще (а первая стабильная версия, по-моему, 12 лет назад вышла, что как бы очень давно по меркам гугла).

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14 Ответы: #58, #59

56. Сообщение от Аноним (56), 18-Окт-22, 06:45   +/
Она самая;)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7

57. Сообщение от Аноним (57), 18-Окт-22, 08:18   +1 +/
> Такие вещи там грамотно проектрируют.

Что там можно грамотно проектировать для этого случая, если один и тот же код, в зависимости от компилятора, теперь будет разный результат давать?
Условно(!):

раньше, старый код/старый компилятор: 2x2=66 (а в логике - "активно покупать!")
теперь, тот же старый код/новый компилятор: 2x2=177 (в логике - "активно продавать!").

И разработчик чешет репу: что же там поломалось, что он кучу денег пролюбил, ведь ничего не менял же, только компилятор обновил на не мажорную версию.

А теперь представь что это произошло в глубинах чужих исходников, которые ты себе в проект затащил.

Да, конечно, надо тестами покрывать. Но надо и в отдельной мажорной ветке несовместимую версию компилятора  выпускать.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #62

58. Сообщение от Facemaker (?), 18-Окт-22, 10:49   +/
>И кто пиарит Go?

Что-то странное ты говоришь. Go пиарили изо всех утюгов несколько лет подряд. Это я хорошо помню. Сейчас, может быть, уже не так, но и нужды нет - Go "взлетел", стал популярным (что как раз указывает на говённость этого языка, но это уже другая тема).

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #55 Ответы: #64

59. Сообщение от Hck3r (?), 18-Окт-22, 11:31   +2 +/
Kubernetes?)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #55

60. Сообщение от Аноним (60), 18-Окт-22, 13:17   +/
> Carbon, разумеется.

Карбон это замена для Раста. При чем здесь Кристал?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46 Ответы: #68, #69

61. Сообщение от iiiypuk (?), 18-Окт-22, 13:43   +2 +/
Да, когда узнал о языке, начал использовать вместо Go, так как раньше я на Ruby писал.

А так пишу ещё мелкие консольные утилиты, где необходима работа с интернетом, когда лень на Си писать.

В целом мне нравится язык и стандартная библиотека, но скорость компиляции убивает.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47

62. Сообщение от iiiypuk (?), 18-Окт-22, 13:50   +/
Ну вообще ты прав. Такое себе решение, если язык хочет быть серьёзным продуктом
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57

63. Сообщение от Аноним (63), 18-Окт-22, 14:25   +/
Для хедеров есть конвертеры в другие языки
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #53

64. Сообщение от leap42 (ok), 18-Окт-22, 16:30   –1 +/
> Что-то странное ты говоришь.

Я по факту говорю. Гугл утюгам не платил. Никто не платил.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58

65. Сообщение от Анонимemail (65), 18-Окт-22, 18:41   +/
Только ленивый ещё свой язык не сделал
Ответить | Правка | Наверх | Cообщить модератору

66. Сообщение от Аноним (66), 18-Окт-22, 23:07   +/
:D студентами помню изучали "yacc" то там у каждого были лабораторные работы где мы свои компилируемые ЯП создавали. так вот нужно было отправлять свои поделки в опеннет с приставкой безопасный )))
Ответить | Правка | Наверх | Cообщить модератору

67. Сообщение от Аноним (-), 19-Окт-22, 00:14   +/
Хедеры далеко не всегда есть. А вот динамическая библиотека с C-нотацией экпорта функций - без проблем.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51 Ответы: #70

68. Сообщение от Прохожий (??), 19-Окт-22, 07:05   +/
Карбон - это замена Плюсам, всё-таки.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #60

69. Сообщение от Facemaker (?), 19-Окт-22, 11:32   +/
Carbon не замена Расту. Об этом говорится прям на заглавной странице:

Existing modern languages already provide an excellent developer experience: Go, Swift, Kotlin, Rust, and many more. Developers that can use one of these existing languages should.

Carbon для тех плюсистов, которым влом изучать что-то совсем новое. То есть замена C++. На этом поле он, конечно, является конкурентом Раста.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #60

70. Сообщение от Аноним (70), 19-Окт-22, 17:11   +/
Наоборот - хедеры уж точно есть, если конечно библиотека опенсорсная. А вот сама библиотека - далеко не всегда (может и не собираться под данную платформу, а только под целевую).
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67 Ответы: #71

71. Сообщение от Аноним (71), 19-Окт-22, 18:07   +/
> хедеры уж точно есть, если конечно библиотека опенсорсная

Но вот как раз хедеры есть не всегда. Только для случая C и C++. Имея хедеры для C++ ещё и невозможно однозначно определить имена экспортируемых функций в имеющемся бинарнике динамической библиотеки, поскольку разные компиляторы C++ по-разному их формируют.

И вопрос был в сравнении с Kotlin, который, сидя на JVM, вообще не имеет никаких проблем с восстановлением имён, аргументов и типов из бинарника. И такому подходу никакие хедеры не нужны. В отличии от C, который далеко не всегда используется по-умолчанию.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #70 Ответы: #72

72. Сообщение от Аноним (70), 20-Окт-22, 18:02   +/
С котлином - да, не сравнить. В каком-нибудь бейсике так вообще - в библиотеке не то что имена, весь исходный текст доступен, можно поправить под себя если что не так.

Но мне кажется странной фраза "А вот динамическая библиотека с C-нотацией экпорта функций - без проблем.". С (и другие нативные языки) как раз позволяют собирать программу имея только хедеры, сама библиотека может быть недоступна. Например, сидя на линуксе линковаться с kernel32.dll.
Ну и примеры библиотек для которых нет хедеров было бы интересно услышать.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #71

73. Сообщение от Аноним (73), 23-Окт-22, 03:51   +/
Вот объясните, нафига в синтаксис пихать слово end? Людям не надоедает его вводить? Неужели нельзя по пробелам блок вычислить или сделать нормальные скобки?
Ответить | Правка | Наверх | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру