LINUX.ORG.RU

О бедном Crystal замолвите слово

 , , ,


2

7

Рассматриваю варианты на замену Go для личного проекта. Сообществом Crystal высказывается мнение, что он то как раз на эту роль и годится, во всём превосходит первый и незаслуженно обделён вниманием (это же слышу от апологетов Nim). Go, конечно, куц и по возможности я бы предпочёл не популяризировать посредственный ЯП, если есть варианты. На Ruby никогда не писал, но после беглого ознакомления некоторые элементы заходят. Кто заглядывал под хвосткапот этому Crystal? Там всё серъёзно или я-его-сварила-из-того-что-было, как в V?



Последнее исправление: Rabinovich (всего исправлений: 1)
Ответ на: комментарий от alex0x08

Это какой-то совершенно новый способ насрать в душу сишному программисту

А в чём проблема-то? GC это хорошо, компилируемость это хорошо, портируемость с чего-то тоже хорошо…

Shushundr ★★★★
()
Ответ на: комментарий от buddhist

пока cloujre-clr не начнет запускаться быстрее чем за полгода

Если цель стоит писать сервисы под дотнет, то это вряд ли большая проблема, а для скриптов есть бабашка.

Nervous ★★★★★
()
Ответ на: комментарий от Rabinovich

Racket (на нём HN крутится, вроде)

Почти так и есть. 6 миллионов пользователей в день [1]. Диалект Лиспа Arc, написанный на Racket, на одном дедике (от M5 Hosting) [2]:

  CPU: Intel(R) Xeon(R) CPU E5-2637 v4 @ 3.50GHz (3500.07-MHz K8-class CPU)
  FreeBSD/SMP: 2 package(s) x 4 core(s) x 2 hardware threads
  Mirrored SSDs for data, mirrored magnetic for logs (UFS)
Rabinovich
() автор топика
Ответ на: комментарий от Rabinovich

Это еще раз потверждает что «запас хода» у любых технологий очень большой (благо Lispы никогда быстрыми не были). Ну и еще раз подтверждает простой факт, что любая виртуализация отжирает на себя существенные ресурсы производительности.

alex0x08 ★★★
()
Ответ на: комментарий от Nervous

И тут проверенную временем промышленную платформу с огромным коммьюнити и готовым решением на любой чих заменить ничем нельзя. Интероп или смерть, так сказатб

Вот здесь неочевидная причина статуса кво. Для рядового мимопроходилы это выглядит как «так происходит потому, что так происходит», но я, например, не рядовой проходимец. Происходит это по неочевидному принципу: хорошие решения меняются, плохие решения остаются. В том числе этим пользуются крупные игроки рынка для того, чтобы создать искуственные барьеры для повторения технологий или создания совместимых решений.

Например, попробуйте сделать ОС, совместимую с Windows в плане запуска приложений — хотя бы для одной единственной железки, никто даже не говорит повторять всю поддержку виндового железа. По состоянию на 2023 один из наиболее ярких примерно — Chromium. Вы думаете, гугл не понимает, что наращивание функциональности браузера ­— это тупиковый путь? Понимает, а также понимает, что ни один игрок на рынке не готов потратить столько ресурсов, чтобы сравниться с Chromium. Уже пора бы переименовать HTML в CML (Chromium Markup Language).

И тут приходит коммерс, которому нужно просто продавать слонов в интернете, и говорит «бюджет на разработку у нас большой, с избытком выделили, тысячу долларов аванс, еще тысяча после запуска в прод», и удивляется «как это за эти деньги ничего нельзя сделать? Мария Петровна мне за эти деньги полгода будет двор мести!». А вот потому что есть стандарт, за ним еще стандарт, за ним еще десять стандартов, и вот три несовместимых готовых решения, и со всеми ними нужна совместимость, под каждое отдельный контейнер, контейнеры на двадцати серваках, админить их должна отдельная команда или аутсорсеры. И это нормально, потому что иначе рынок IT был бы раз в 10 меньше.

Потому нужно сразу говорить, что не «проверенную временем промышленную платформу с огромным коммьюнити», а «индусу хочется кушать, потому либо кормите индуса из своего кармана, либо пользуйтесь трудом уже прикормленного».

byko3y ★★★★
()
Ответ на: комментарий от byko3y

плохие решения

искусственные барьеры

тупиковый путь

Похоже, ты заработался. Может, в отпуск?

«индусу хочется кушать, потому либо кормите индуса из своего кармана, либо пользуйтесь трудом уже прикормленного»

Вот если бы программы и библиотеки проектировались, писались, тестировались и документировались сами по себе, а стандарты сами по себе соблюдались. И вообще оно бы как-то само по себе где-то на Марсе изобреталось, производилось и там же проверялось временем — вот была бы жызнь! Не жызнь, а малина. Нам бы осталось только синтетические бананы в рот закидывать да смешные видосики смотреть с нейрокотиками.

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 3)
Ответ на: комментарий от Nervous

Похоже, ты заработался. Может, в отпуск?

Никто меня не выпустит.

Вот если бы программы и библиотеки проектировались, писались, тестировались и документировались сами по себе, а стандарты сами по себе соблюдались

Когда я перешел с делфей на JS, то я резко почувствовал что-то вроде «да здесь же ничего нету!». Хотя, казалось бы, технологии здесь развивались дольше и активнее, бюджеты вложены жирнее. Тем не менее поддержка десятков слоев совместимостей с совместимостями, фич, которые никто не использует, но которые по стандарту положены, требует огромных ресурсов для разработки платформы/аналога.

Я тут недавно упоминал BPEL:
Архитектура системы обработки заказов (комментарий)
Типичный вариант переусложненного ненужного стандарта. XML — почему XML? Язык не подходит для передачи сообщений между программами из-за чрезмерной сложности, но его продолжают пихать куда ни попадя. Есть уже даже стандарт MicroXML
https://dvcs.w3.org/hg/microxml/raw-file/tip/spec/microxml.html
под который парсер пишется в 2 тысячи строк, но нет, мы будем использовать полную спеку, а еще XPath и XSLT, чтобы кодеры даже не думали о том, что можно просто сделать парсер для этого говна. То есть, вместо того, чтобы решить проблему по кратчайшему пути, одну кучу говна наращивают второй кучей говна.

Или вот я года два назад занимался интероперабельностью с MS Office — вот уже где пацаны постарались на славу: ISO/IEC 26300 на OpenDocument в десять раз меньше ECMA-376 на Office Open XML — и там еще не все причуды офиса задокументированы. Если требовать поддержки всяких xslx и docx, то сложность резко взлетает в космос, если ограничиться ODF/ODS — уже чуть лучше (хотя XML все равно говнище).

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Например, попробуйте сделать ОС, совместимую с Windows в плане запуска приложений — хотя бы для одной единственной железки, никто даже не говорит повторять всю поддержку виндового железа.

А какая в этом экономическая целесообразность? Windows уже есть. Объясни виндоводам зачем им твоё поделие на одной железке, если у них всё и так работает.

Rabinovich
() автор топика
Ответ на: комментарий от byko3y

Когда я перешел с делфей на JS, то я резко почувствовал что-то вроде «да здесь же ничего нету!»

Вот да, после дельфей современные технологии GUI кажутся каким-то издевательством. Фронтенд это вовсе акробатика, когда нужно собирать гуи из говна и палок прыгая на батуте. Я так и не осиливаю понять почему весь этот бред цветёт и пахнет.

bread
()
Ответ на: комментарий от Rabinovich

А какая в этом экономическая целесообразность? Windows уже есть. Объясни виндоводам зачем им твоё поделие на одной железке, если у них всё и так работает

Речь шла про совместимость, что Crystal без батареек с совместимостью не нужен. А я пишу, что охреневший энтерпрайз задерает планку сложности настолько, что можно бесконечно пытаться реализовывать поддержку всяких стандартов, протоколов, и платформ, и работе этой нет ни конца, ни края.

byko3y ★★★★
()
Ответ на: комментарий от bread

после дельфей современные технологии GUI кажутся каким-то издевательством. Фронтенд это вовсе акробатика, когда нужно собирать гуи из говна и палок прыгая на батуте. Я так и не осиливаю понять почему весь этот бред цветёт и пахнет

Основной аргумент — это работает на всех платформах (которых нынче стало неприятно дофига). То есть, можно написать код, который заработает и на андроиде, и на маке, и на винде. В какое-то время это даже было хайпом, мол «употребляйте Electron и ваши волосы будут мягкими и шелковистыми». Особо поехавшие писали на Electron+React. После того, как кучу стартапов на электроне загнулось, публике стало ясно, что Electron не является серебрянной пулей, прыти поубавилось, снова возникли поиски альтернативных, более надежных платформ. А также пришло понимание, что таки для винды и андроида нельзя использовать одинаковый GUI — ну вот разные они, хоть убей.

byko3y ★★★★
()
Ответ на: комментарий от bread

после дельфей современные технологии GUI кажутся каким-то издевательством

Delphi как RAD-система был хорош, пока графических разрешений было немного. Прибить контролы к пикселям и усё. Я в своё время немало разрабатывал на Delphi и хорошо помню тот момент, когда стало трудно адаптировать GUI к разным разрешениям. Даже начал сочинять что-то вроде системы лэйаутов, потом плюнул и перешёл на C++/Qt.

hbee ★★★★
()
Ответ на: комментарий от hbee

Я в своё время немало разрабатывал на Delphi и хорошо помню тот момент, когда стало трудно адаптировать GUI к разным разрешениям

У них багованная система выравниваний-якорей. Она пересчитывала туда-обратно размеры при пересоздании окон, а пересоздание окон было краеугольным камнем всей VCL, поскольку по другому нельзя изменить целый ряд свойств стандартных контролов винды. Она изначально костылилось поверх того, что было не адаптировано к грамотным выравниваниям. И вот на втором слое костылей этой системе стало совсем плохо.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Речь шла про совместимость, что Crystal без батареек с совместимостью не нужен. А я пишу, что охреневший энтерпрайз задерает планку сложности настолько, что можно бесконечно пытаться реализовывать поддержку всяких стандартов

Так зачем ты выбираешь тот стул, где эту поддержку надо кровь из носу запиливать самостоятельно, а не тот, где предоставлен удобный интероп с платформой, через который ценители садо-мазо могут ловить свой собственный кайф, а не ценители — даже и не знать, что такое вообще существует? %)

И при этом и те, и другие могут пользоваться всеми плюшками, которые даёт твой язык.

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 1)
Ответ на: комментарий от Nervous

Так зачем ты выбираешь тот стул, где эту поддержку надо кровь из носу запиливать самостоятельно, а не тот, где предоставлен удобный интероп с платформой, через который ценители садо-мазо могут ловить свой собственный кайф, а не ценители — даже и не знать, что такое вообще существует? %)

Я выбираю второй стул. Другое дело, что мне не нравится тенденция к самоокукливанию IT, когда уже всем очевидна ошибочность подхода, но все продолжают делать как делали, потому что «готовые решения».

byko3y ★★★★
()
Ответ на: комментарий от bread

Что мешает сделать в браузере стандартную библиотеку виджетов хотя бы уровня Tk?

Если ты пользовался Google Docs, то ты понимаешь, насколько геморно сделать банальный многострочный редактор текста на голом JS. Кнопки есть в браузере из коробки, надписи есть, галочки, выпадающие списки, но только с ограниченным набором фич. Сделать с нуля на JS выпадающий список с широкой возможностью кастомизации — весьма нетривиальная задача.

Всё сводится к тому, что писать на C/C++ GUI с нуля можно, а вот с JS такого уже не провернуть. Вон, на Java делали GUI, так от них тоже плевались.

byko3y ★★★★
()
Ответ на: комментарий от asdpm

кто плевались? от swing или fx плевались?

FX не взлетело, все остальные печальные какие-то. Сколько я пользовался жавовыми софтинами — впечатление примерно как от Tk.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

как пользователь нескольких программ на свинге, не понимаю чем они не тебе угодили. выглядят нормально (Metal), ведут себя как нормальные программы, не тормозят.

asdpm
()
Ответ на: комментарий от byko3y

JavaFX не то чтобы не взлетело - ниша кончилась, новые проекты ушли в веб, старые и большие остались на RDP монстрах вроде Eclipse.

Собственно можно сказать что Java после 1.8 точно также не взлетела - куча решений и вендоров так и остались на 1.8, несмотря на выход уже аж 21й версии JDK.

Инертность рынка.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

JavaFX не то чтобы не взлетело - ниша кончилась, новые проекты ушли в веб, старые и большие остались на RDP монстрах вроде Eclipse

Я тебя умоляю, Eclipse и всякие там Идеи, тормозящие и выжирающие память десятками гигабайт, являются лучшим доказательством моего тезиса.

Собственно можно сказать что Java после 1.8 точно также не взлетела - куча решений и вендоров так и остались на 1.8, несмотря на выход уже аж 21й версии JDK

Посмотри на VS Code. Это JS/нода, и она работает не хуже жавы. Да, поздние версии жавы лучше восьмерки, но по сравнению с JS не нужны ни поздние, ни ранние версии жавы. Потом еще на серверах пришел Go и оставил жаве только нишу legacy.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

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

Угу, от вида фотошопа сожравшего 50Гб памяти при работе тебе наверное вообще поплохеет. Молчу про видеомонтаж.

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

Еще конечно просто и красиво наезжать на RAD вроде Eclipse, если не знать что до них никаких сложных сред разработки не было.

А Visual Studio так вообще едва едва вылез из уровня простого редактора с подсветкой синтаксиса, в районе 2015го года.

Посмотри на VS Code. Это JS/нода, и она работает не хуже жавы.

Это ты на нее смотришь, а я на нем работаю. И оно хуже, сильно хуже.

Потом еще на серверах пришел Go и оставил жаве только нишу legacy.

Все таки надо в отпуск. Без отпуска можно перейти черту и начать писать на Haskell для прода - это именно так и начинается: с выгорания и экстремальных тезисов.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

Угу, от вида фотошопа сожравшего 50Гб памяти при работе тебе наверное вообще поплохеет. Молчу про видеомонтаж

Adobe стабильно выдает куски дерьма, и это не значит, что так оно и должно быть.

Еще конечно просто и красиво наезжать на RAD вроде Eclipse, если не знать что до них никаких сложных сред разработки не было.

Потому что они были НЕ НУЖНЫ. Java — это настолько всратый язык, что на нем непрактично писать сложный код, нужна обязательная прокладка, которая будет транслировать жаву в человекочитаемое представление.

Но это не имеет никакого отношения к тому, что VS Code представляет собой лучшую альтернативу Eclipse/IntelliJ Idea, и в целом в сфере GUI JS укатал Java в асфальт.

Посмотри на VS Code. Это JS/нода, и она работает не хуже жавы.

Это ты на нее смотришь, а я на нем работаю. И оно хуже, сильно хуже.

Хуже для чего? Для жавы? VS Code для жавы использует, внезапно, Eclipse, потому что выбор анализаторов для жавы невелик. Я юзаю его для JS, Python, C/C++.

Без отпуска можно перейти черту и начать писать на Haskell для прода - это именно так и начинается: с выгорания и экстремальных тезисов

Я еще не настолько упорот.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Adobe стабильно выдает куски дерьма, и это не значит, что так оно и должно быть.

И какие из продуктов Адоба мьсе использует для работы? Иллюстратор? Премьер? Или может быть Фотошоп?

Java — это настолько всратый язык, что на нем непрактично писать сложный код,

Барнаул, Алтайский край.

VS Code представляет собой лучшую альтернативу Eclipse/IntelliJ Idea, и в целом в сфере GUI JS укатал Java в асфальт.

В отпуск, срочно. Или детокс в клинике для богатых.

Я серьезно, тут остался шаг до Хаскелла и это необратимо.

alex0x08 ★★★
()
Ответ на: комментарий от byko3y

Сколько я пользовался жавовыми софтинами — впечатление примерно как от Tk.

VS Code. Это JS/нода, и она работает не хуже жавы

Java — это настолько всратый язык, что на нем непрактично писать сложный код

в сфере GUI JS укатал Java в асфальт

не понял тебя: в сфере разработки десктопного гуи решения основанные на java были замещены html/js потому что что? потому что первые были архитектурно неудачны? имели низкое качество? были неполны? или потому вторые просто технологически лучше, изначально удачнее спроектированы, полнее? или потому что с первыми результат был менее удобен конечному пользователю? или что? почему так произошло-то в твоем понимании?

asdpm
()
Ответ на: комментарий от alex0x08

А Visual Studio так вообще едва едва вылез из уровня простого редактора с подсветкой синтаксиса, в районе 2015го года.

по моим воспоминаниям даже VB 2000 года не соответствует этому определению. там был и отладчик и «проекты» (а непросто файлы), и графический построитель гуи с панелью редактора свойств.

так же по моим воспоминаниям в середине-конце 2000-ыx, в VS была навигация по коду кликом, встроенная справка, отладчик, автокомплит, интеллисенс, графический построитель для WinForms, хреновина для uml проектировая, инструмент для работы БД (MSSQL разумеется), встроенный контроль версий (их сурссейф), в конце 2000-ых там уже было два дизайнера (второй для WPF). да чего там наверное только не было - я за этим только со стороны наблюдал, но даже этого достаточно чтобы понять, что ты несешь дичь.

какой еще 2015 год? какой еще «простого редактора с подсветкой синтаксиса, в районе 2015го года»? что ты гонишь вообще?

asdpm
()
Ответ на: комментарий от asdpm

Держи себя в руках, понимаю что это трудно )

Теперь объясняю отличие между IDE и текстовым редактором с дополнениями которые ты любезно описал.

  1. Рефакторинг

Изменить пакет, класс, сигнатуру метода, сгенерировать стандартные методы (get/set property для C# как пример)

  1. Обновление проекта

До сих пор это исправляется ручной правкой проектных файлов, студия в некоторых случаях просто такой проект не открывает.

  1. Анализатор кода

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

Всего этого нет в студии до сих пор. В 2015м просто видимо произошло озарение и начался процесс, но даже на 2023й год студия выглядит убого по сравнению с Java средами.

Заранее извиняюсь за возможный оффтопик и суровую правду жизни.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

Рефакторинг

насколько помню люди покупали какой-то плагин как раз от jetbrains, и он интегрировался нормально.

Анализатор кода

про это не знаю.

простого редактора с подсветкой синтаксиса, в районе 2015го года
Заранее извиняюсь за возможный оффтопик и суровую правду жизни.

суровая правда в жизни в том что ты неправ со своей чушью про «простого редактора с подсветкой синтаксиса» вот и всё.

asdpm
()
Ответ на: комментарий от asdpm

суровая правда в жизни в том что ты неправ со своей чушью про «простого редактора с подсветкой синтаксиса» вот и всё.

Но по делу тебе конечно сказать нечего. Правда ведь?

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

я по делу уже все сказал: VS более чем соответствовала понятию IDE в середине двухтысячных (а не в 2015), была как минимум on-par с другими IDE, и точно не была простым текстовым редактором как ты выразился. а вот тебе сказать действительно больше нечего - не будешь же ты признавать что несешь чушь.

asdpm
()
Ответ на: комментарий от asdpm

Слушай, я пишу от своего имени, на аватарке - мое реальное фото, в профиле - ссылки на блог и проекты. Можно без труда понять и кто я такой и что знаю и какой путь прошел.

Общение из серии «сам дурак» (еще и непонятно с кем) мне уже просто не интересно. Поэтому либо ты начинаешь общение по делу, либо заканчиваешь либо отправляешься в игнор.

Со всем уважением, но вот так.

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

вы точно про VS а не VScode?

ибо VS всегда была у микрософт флагманским продуктом и в версии энтерпайз всегда(т.е с момента появления такого варианта поставки в середине 90ых) имела много(через чур по мнению многих) гитик

ваще под VS чуть ли не весь софт микрософт был одновремя сделан

qulinxao3 ★☆
()
Последнее исправление: qulinxao3 (всего исправлений: 1)
Ответ на: комментарий от qulinxao3

ибо VS всегда была у микрософт флагманским продуктом и в версии энтерпайз всегда(т.е с момента появления такого варианта поставки в середине 90ых) имела много(через чур по мнению многих) гитик

Блин, вот специально по пунктам описал что не так, с конкретикой. И все равно «автор дурак».

Я прекрасно понимаю и что такое Visual Studio и чем она отличается от VSCode, я использовал и использую и то и другое, видел Visual Studio Enterprise Edition еще версии 6.0 (это где-то 2004-2005й годы).

По делу есть что ответить? Не абстрактно как тут любят?

alex0x08 ★★★
()
Ответ на: комментарий от alex0x08

видел Visual Studio Enterprise Edition еще версии 6.0 (это где-то 2004-2005й годы).

VS 6.0 – это 1998-й. Там даже полноценной поддержки С++98 не было еще.

2004 – это должно было уже быть, минимум, VS2003. А в 2005-ом вышла VS2005.

Ну а так-то VS 6.0 – это почти то, что вы и рассказывали: редактор, интегрированный отладчик, браузер проекта (с возможности перейти на декларацию или реализацию функции/метода), поддержка MFC на уровне разнообразных Wizard-ов.

Рефакторинга тогда в VS 6.0 не было (емнип). Рефакторинги – это уже 2000-е годы, когда написанные на Java и для Java IDE достигли должной зрелости и приемлемой производительности.

eao197 ★★★★★
()
Ответ на: комментарий от alex0x08

https://en.wikipedia.org/wiki/Visual_Studio#Architecture

майки любят создавать рынок - поэтому часть того что есть по умолчанию в эклипсе и прочих идеях

студия предполагает плугинами

https://marketplace.visualstudio.com/

очень похоже на то как они своим экселем и vba на корню подмяли под себя всю малую офисную автоматизацию

и да в отличии от тех же джетбрейнсов майкам хватило расторопности запилить vscode с нескучными обоями

qulinxao3 ★☆
()
Ответ на: комментарий от alex0x08

И какие из продуктов Адоба мьсе использует для работы? Иллюстратор? Премьер? Или может быть Фотошоп?

Лично я кроме флеша ничем не пользовался, мне его хватило, моим знакомым — фотошопа с премьерами.

Барнаул, Алтайский край

Что ты сказать-то хочешь этой фразой?

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Что ты сказать-то хочешь этой фразой?

Что вам надо наконец повзрослеть, осознать предел собственных сил и возможностей, осознать что мир и природу вещей вам не изменить. Ну и наконец обрести покой и просто заниматься любимым делом.

Не неся херню про корпорации и идиотов вокруг.

А Барнаул? Барнаул это мантра такая.

Рекомендую повторять по сто раз фразу «Барнаул, Алтайский край» каждый раз когда покажется что стал слишком умным и зазвездился.

alex0x08 ★★★
()
Последнее исправление: alex0x08 (всего исправлений: 1)