LINUX.ORG.RU

Ruby 2.0.0 preview1

 


2

6

Анонсирован Ruby 2.0.0 preview1. Были включены новые фишки, которые делают разработку на Ruby ещё приятнее.

Анонсированные фичи:

  • Уточнения (Refinements) [1]
  • Именованные аргументы в методах (сахар над хэшем) [2]
  • Enumerator#lazy [3]
  • Module#prepend [4]
  • #to_h
  • %i, для массивов символов
  • Движок регулярных выражений изменён на Onigmo [5]
  • Поддержка DTrace [6] (не включено)

Пока что ещё не все новые фишки включены в Ruby, это откладывается на следующие анонсы.

Не забываем устанавливать и находить баги, это только сделает Ruby лучше.

Все программы, которые написаны на ruby-1.9 будут работать на ruby 2.0, если в них не будет особой магии.

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

anonymous

Проверено: tazhate ()
Последнее исправление: tazhate (всего исправлений: 2)

Устроили срач НЕНУЖНО1 vs НЕНУЖНО2.

Возможно сейчас у ruby и python есть фишки которых нет в node, но:
- либо это не нужно
- либо это сделают в скором времени (сообщество node очень активное)

А вот в node.js есть фичи которые никогда не сделают ни в python ни в ruby:
- скорость
- один язык в браузере и на сервере

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

- один язык в браузере и на сервере

И ни для того, ни для другого этот язык не годится.

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

«Универсальность» нодежс может сыграть и плохую шутку: фронт-эндщики возомнят себя бэкендерами и наступит адь подобный пэхапешному *когда школие возомнило себя программистами*

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

Эта «фича» не относится к языку (ну, кроме совсем эзотеричных типа брейнфака), а относится к программистам. И там и там можно писать жесть, а можно (и нужно) - нормально. Посему - не аргумент :-)

сам пишешь, сам отвечаешь

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

А вот в node.js есть фичи которые никогда не сделают ни в python ни в ruby:

- скорость - один язык в браузере и на сервере

Скорость? В гуглхроме может быть. Но это всё равно интерпретатор. Причем интерпретатор ужасного языка, ужаснее которого нет ничего в современном мире программирования.

Сохрани нас Патрик от этого.

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

Сравни как нибудь PPS node.js и EventMachine и ты удивишься что Node проигрывает 10% на helloworld.
Скорость не главное если это не поделка школнега, поддержка кода. И в этом что пайтон что руби.
А вообще если нужна большая скорость то есть jvm.

st4l1k ★★
()
Ответ на: комментарий от val-amart

Да, перл хуже. Беру свои слова назад.

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

я устал повторять http://coffeescript.org/

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

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

Ахаха. Используют 3.5 человека?

Например, Google Closure, с которой тесно интегрирован Clojurescript, использует Google для Gmail, G+ и других веб-приложений.

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

Где в Google Closure есть Clojurescript? То что Clojurescript тесно интегрирован с Google Closure не значит что Clojurescript используют в гугле.

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

Где в Google Closure есть Clojurescript? То что Clojurescript тесно интегрирован с Google Closure не значит что Clojurescript используют в гугле.

Так я этого и не утверждал.

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

тогда получается что сlojurescript никто не использует и у js/coffee в браузере нет конкурентов

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

тогда получается что сlojurescript никто не использует и у js/coffee в браузере нет конкурентов

Нет же. Clojurescript — это новая технология, число пользователей которой стремительно растет за счет преимуществ, которые она предоставляет в сравнении с аналогами: https://github.com/clojure/clojurescript/wiki/Rationale

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

Ещё раз. Проблемы языка, т.е. javascript'а. В кофескрипте проблем быть не может, это не язык, это попытка исправить перегруженый, но привычный многим js на менее перегруженый и непривычный всем, ни на что не похожий синтаксис.

А какие проблемы в js - ну тут написано так много, что гугл расскажет лучше меня :)

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

Возможно сейчас у ruby и python есть фишки которых нет в node, но: - либо это не нужно

Таки не нужно?) http://www.ruby-doc.org/core-1.9.3/Array.html http://www.ruby-doc.org/core-1.9.3/Hash.html http://habrahabr.ru/post/140362/

либо это сделают в скором времени

Кстати вот реализация js от mozilla более функциональна https://developer.mozilla.org/en-US/docs/JavaScript/New_in_JavaScript/1.8 https://developer.mozilla.org/en-US/docs/JavaScript/New_in_JavaScript/1.7#Blo...
Никто, не знает, публикуют ли они где-нибудь свою js машину с новым IonMonkey?

- скорость

Ы я тут только что доклад посмотрел http://www.youtube.com/watch?v=tCG0aPNvkTs Внезапно: на js надо писать как на си, прототипирование это плохо, функции лучше помещать в объект, а не прототип и даже О_О копировать текст. Короче, я передумал: к черту v8. Кстати докладчик разрабатывает dart, и говоря о преимущества перед typescript (внезапно) назвал пакетный менеджер :р (который «исторически» нужен -_-)

Там не только js есть. Coffeescript вполне няшный язык.

Coffeescript заточен под кроссбраузерность, которая не нужна на сервере вообще.

special-k ★★★★
()
Ответ на: комментарий от Alve

А мужики то и не знали, пишут себе на чем-то, а это оказывается и не язык даже.
С++ который раньше в C транслировался тоже не язык?

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

А мужики то и не знали

The golden rule of CoffeeScript is: «It's just JavaScript». The code compiles one-to-one into the equivalent JS, and there is no interpretation at runtime.

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

С++ который раньше в C транслировался тоже не язык?

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

В чем заточенность под кроссбраузерность? Кофе про дом ничего не знает.

Например тут http://stackoverflow.com/questions/10773769/optimize-coffeescript-generated-j... хотя и сошлись, что все хорошо, но вероятно есть и другие примеры.

И еще раз

http://www.youtube.com/watch?v=tCG0aPNvkTs

Код который генерит coffee не оптимален с точки зрения V8. Наследование (которое киллер фича по сути) - зло. Вложенные функции, которые coffee повсеместно генерит - тоже не очень хорошо. На js, чем проще, тем лучше.

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

Позиция гугловцев: на js надо писать как на си, а в остальных случаях можешь не упоминать слово «скорость» ;)

special-k ★★★★
()
Ответ на: комментарий от Alve

непривычный всем, ни на что не похожий синтаксис.

Ну для тех кто тыкал Clojure или CL вполне привычный, ну или emacs юзал.

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

И какие же такие преимущества?

Я ведь дал ссылку в посте, на который вы отвечаете. Вы по ней сходили?

Там кратко, однако получить представление о подмножестве проблем JS, которые решает Clojurescript и не решает Coffeescript, можно.

Anatolik ★★
()
Ответ на: комментарий от special-k

Анон незнает что рубисто можно тролить только по вопросам удобности, особенно тех кто начинал до 1.9.

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

Про скорость они уже и не мечтают, ведь так весело почитать баш пока рельсы наконец-то стартонут...

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

Про скорость они уже и не мечтают, ведь так весело почитать баш пока рельсы наконец-то стартонут...

Ты видимо это на том же баше и прочел, ага.

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

Кроме запуска дев сервера и тестов постоянно приходится делать rails generate, rails console, rake db:migrate/rollback, rake routes. Так что да довольно часто.

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

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

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

Рельсы стартовали 16-18 секунд. После falcon патча стартуют 5-6 секунд. Зевс нестабильный и часто отпадает.

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