LINUX.ORG.RU

Релиз Crystal-0.27.0

 ,


2

4

Crystal — объектно-ориентированный язык программирования общего назначения, созданный с целью:

  • иметь синтаксис, очень похожий на Ruby;
  • обеспечивать статическую проверку типов без явного указания типов переменных или аргументов методов;
  • иметь возможность написания биндингов к языку С на самом Crystal;
  • обеспечивать возможность метапрограммирования, путем выполнения кода в фазе компиляции и генерации кода;
  • компилировать программу в высокоэффективный бинарный (native) код.

Как заявляют авторы проекта: «мы любим ruby за его эффективность написания кода, а С за его эффективность при выполнения кода и мы хотим скрестить все лучшее из этих двух миров...».

Changelog

>>> Подробности



Проверено: jollheef ()
Последнее исправление: cetjs2 (всего исправлений: 3)

Не взлетит. Пока не появится как Докер для Го.

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

3.5 либы и там и там

GI, вроде, и в ниме тоже есть, не только в вале

actionless ★★★★★
()

мы любим ruby за его эффективность написания кода

Вполне достойное желание писать бинарники как человеки со светлыми лицами, а не красноглазики. Вот только они хипстеры, а не системные программисты, и получается: тормозной игрушечный GC Бома, нативные фиберы (= невозможность автоматом вернуть память, выделенную под раздутый стек), отсутствие модели памяти под многопоточность (= прощайте lock-free типы данных). По-моему, годная замена для php, ruby, perl и прочего кустарного барахла, но никак не си.

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

На замену си, с сильной натяжкой и с допущением: «для простых смертных» кое-как выполз “Go”. У Go хороший рантайм, но концепции немного туповаты, так что ему бы развития лет 15, и можно использовать...правда, есть Swift, который, на данный момент, самый крутой из новых яп, догнать его уже не получится ни Rust, ни D.

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

за что я не люблю нимроды/кофескрипты/jvm-язычки, что в итоге надо в проекте с двумя языками работать вместо одного

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

Go

это компилируется:

if ... {
}

это не компилируется:

if ... 
{
}

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

if ... {
}
else {
}

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

боюсь, что через «15 лет развития» будет проще написать на с++34, как сейчас кое-что проще написать на с++11, чем на питоне, например.

очень жаль, серьёзно, я бы лично использовал бы го если бы он не создавал вот такие какие-то совершенно конченые проблемы на ровном месте.

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

Swift

который, на данный момент, самый крутой из новых яп

А меня на этом форуме пугали, что в нем создаются потокобезопасные структуры на каждый сих и от этого он медленнее других компилирующихся ЯП и вообще им не ровня

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

На замену си, с сильной натяжкой и с допущением: «для простых смертных» кое-как выполз “Go”. У Go хороший рантайм, но концепции немного туповаты, так что ему бы развития лет 15, и можно использовать...правда, есть Swift, который, на данный момент, самый крутой из новых яп, догнать его уже не получится ни Rust, ни D.

Swift тормозной слишком и на нем ничего быстрого не написать. Иосеры так же продолжают писать важные вещи на сях. Поэтому Расту среди всего что ты перечислил никто не конкурент на замену Си.

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

У Go хороший рантайм, но концепции немного туповаты, так что ему бы развития лет 15, и можно использовать...

Он существует уже 9 лет, и ничего особо не поменялось в архитектурном плане.

sT331h0rs3 ★★★★★
()

Руби на стероидах? Выстрелит. Динамические недоязычки должны умереть.

FilosofeM ★★
()

А сделали просто ещё одо ненужно в море ненужнов. Хорошо было программистам прошлого, они могли знать один, ну два языка программирования. Теперь же половину жизни программист должен провести изучая всё новые фреймворки и языки. Время убитое на работу, отнятое у семьи, за которое никто никогда не заплатит и не поблагодарит «за сладостные секунды».

Deleted
()

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

Казалось бы, при чем тут Ada...

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

Swift быстрый, и в нем можно легко оптимизировать скорость. У нас на нем несколько игр написано, perlin noise, хэш функции свои, и всё быстро, на си мы переписали только SIMD инструкции для AVX/AVX2, т.ч. не надо про тормознутость свифта - это ложь феерическая.

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

правда, есть Swift, который, на данный момент, самый крутой из новых яп, догнать его уже не получится ни Rust, ни D

Swift скорее всего останется нишевым ЯП для эппл продуктов.

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

Это не так. У apple есть свой Accelerate framework, и он нативный, но, если под линь писать, то да, ядро нужно будет написать на Си, но он родной для swift - функции и типы напрямую прокидываются, не вижу проблем.

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

У кого не изменилось? У тебя? А что ты такого написал на свифт, чтобы оно уперлось в производительность? У меня, к примеру, упиралось в память, в её аллокатор и free. Поэтому я переписал 11% кода на Си.

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

Swift открыт. Полностью. Открыты также несколько либ типа мультипоточного менеджера от эппл, и компилятор swift уже сейчас собирается и тестируется каждый день для x86, x86-64, arm-v7, arm-64 (arm-v8); Ubuntu, Mac OS; без проблем можно собрать и для FreeBSD, на винду тоже скоро допилят - видел в коммитах - идет и в этом направлении работа, основной приоритет - UNIX.

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

Судя по количеству закачек её особо никто не использует.

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

В реальных проектах редко когда приходится работать только с одним. Обычно есть как минимум sh/python/ruby для всякой автоматизации.

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

Сразу видно джуна ответ. Свифт я так понимаю ты тоже толком не знаешь.

anonymous
()

Нужно всего два языка C/C++ и Python. Причем второй просто для того чтобы понять как правильнее делать на первом.

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

Swift крут, если нужно писать под мак. За этими пределами он бесполезен, каким-бы хорошим он не был.

догнать его уже не получится ни Rust

Разные языки. Разные цели. Rust более низкоуровневый.

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

Хорошо было программистам прошлого, они могли знать один, ну два языка программирования.

Почитайте историю. Это до нас дошло несколько языков, а наработок было валом.

RazrFalcon ★★★★★
()

мы хотим скрестить все лучшее из этих двух миров...».

Деды с 1964 г. скрещивали «все лучшее» в PL/1, но история учит, что она ничему не учит :)

quickquest ★★★★★
()

Както попинал, баг в компиляторе отрепортил. В принципе забавно так, но оно всего лишь игрушка, так как слишком уж дерзкий подход к типизации. Решать задачки по типу олимпиадных на нем разве что.

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

слишком уж дерзкий подход к типизации.

Чоткий дерзкий или мутный дерзкий?

А если без шуток, то действительно интересно, расскажи, в чём дерзость?

anonymous
()

$NewLanguageName — объектно-ориентированный язык программирования общего назначения, созданный с целью:

  • иметь синтаксис, очень похожий на $MyFavoriteLanguageName;
  • обеспечивать статическую проверку типов без явного указания типов переменных или аргументов методов;
  • иметь возможность написания биндингов к языку $PopularLanguageName на самом $NewLanguageName;
  • обеспечивать возможность метапрограммирования, путем выполнения кода в фазе компиляции и генерации кода;
  • компилировать программу в высокоэффективный бинарный (native) код.

Как заявляют авторы проекта: «мы любим $MyFavoriteLanguageName за его эффективность написания кода, а $PopularLanguageName за его эффективность при выполнения кода и мы хотим скрестить все лучшее из этих двух миров...».

for [NewLanguageName,MyFavoriteLanguageName,PopularLanguageName]  in говноПоделки:
    news = newsTemplate.replace(NewLanguageName,MyFavoriteLanguageName,PopularLanguageName)
    LOR.post(news)
anonymous
()
Ответ на: комментарий от umren

С тех времен ничего не изменилось по перфомансу

Графики чудесны ;)

Deleted
()

Напрограммируют языков программирований, не успеваем изучать...

abbat81 ★★
()

Знаете от чего мне становится по настоящему страшно ? Это когда я в дюпель синий в шутку сморожу какой нибудь лютый бред про ИТ, а оказывается это уже есть или кто-то это уже пилит.. Да ещё и в ынтырпрайз..Пля :(

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

Не кросс? Вопрос тогда с мегоязыком Swift закрыт ;)

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

А где бред? Предъявите, так сказать, весь список!

Сынок, перечитай мои труды на Лоре, я слишком стар для этого дерьма

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

Однако радуешь ;) Атэц! Стар он для дерьма? Тут не особо известно, к чему готовиться (мало ли, что ты в пьяном угаре высказал), а он отмазывается...

P.S. Давай письками меряться. Мне 12 и я бородат. А ты?

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

Однако радуешь ;) Атэц! Стар он для дерьма? Тут не особо известно, к чему готовиться (мало ли, что ты в пьяном угаре высказал), а он отмазывается...

К худшему сына, к худшему... Rust будет переписан на java

vasya_pupkin ★★★★★
()

Эти кибер-мичуринцы слышали что-нибудь о Ди?

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

сделали просто ещё одо ненужно в море ненужнов.

Ну если уже работаешь с руби, то ничего учить особо не придется. Так что в данном случае ты несправедливо возбухаешь. В КОИ то веки вместо изобретения йоба-лисапеда взяли популярный недоязычок и попытались выточить из него годный ЯП. Понятно, что никому не нужно и не взлетит, но усердие авторов заслуживает уважение.

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

не, я не спорю, всякий творящий что-то непонятное достоин уважения Просто я не понимаю ни нужды в руби, ни в его модернизации.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.