The OpenNET Project / Index page

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

07.02.2013 00:29  Первый выпуск Topaz, высокопроизводительной реализации Ruby, написанной на языке Python

После 10 месяцев разработки анонсирован первый выпуск проекта Topaz, в рамках которого создана новая реализация языка Ruby, написанная на языке RPython (подмножество языка Python со статической типизацией) и использующая наработки проекта PyPy. Код Topaz распространяется под лицензией BSD. Ключевыми целями проекта является обеспечение высокой производительности и простота реализации. Готовые бинарные сборки созданы для Mac OS X, Linux и Windows.

Topaz базируется на идее использования JIT-компилятора, на лету транслирующего некоторые элементы в машинный код, в сочетании с эффективным сборщиком мусора. Указанные элементы позволили добиться значительного прироста производительности и заметно обогнать по скорости традиционный интерпретатор Ruby. Topaz нацелен на обеспечение совместимости с Ruby 1.9.3, но пока реализация не является полной и проект позиционируется как экспериментальная разработка, ещё не готовая для использования в реальных проектах.

Из недостающих компонентов отмечается отсутствие многих модулей стандартной библиотеки и встроенных методов, нет поддержки приватных методов, FFI и многопоточности. Тем не менее уже доступны почти все базовые возможности языка, включая классы, блоки, различные встроенные типы, методы и многое другое. Следующие несколько месяцев планируется посвятить обеспечению работы стандартных модулей и классов, а также добиться совместимости с модулями, написанными на языке Си, что позволит довести Topaz до пригодности к выполнению пользовательских Ruby-приложений.

  1. Главная ссылка к новости (http://docs.topazruby.com/en/l...)
  2. OpenNews: Релиз PyPy 1.9, реализации Python, написанной на языке Python
  3. OpenNews: Представлен pypy-stm, интерпретатор Python с поддержкой распараллеливания на многоядерных системах
  4. OpenNews: Релиз PyPy 1.8, реализации Python, написанной на языке Python
Лицензия: CC-BY
Тип: К сведению
Ключевые слова: ruby, pathon, jit, pypy
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Линейный вид | Ajax | Показать все | RSS
 
  • 1.1, pavlinux, 00:50, 07/02/2013 [ответить] [смотреть все]
  • +20 +/
    Вот и встретились два тормоза! :)
    Ждём PHP на JavaScript.
     
     
  • 2.3, anonymous, 01:00, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]
  • +/
    Всё правильно Готовится же пилотируемый полет на Марс, надо, значит, космонавта... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.51, Тутутиту, 12:51, 07/02/2013 [^] [ответить] [смотреть все]  
  • –3 +/
    да чота както не смешно, ведь это была шутка да?
     
  • 2.6, sKotenok, 01:20, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +28 +/
    Для тех, кто в танке, RPython по сути ближе к C++/D и компилируемый, но с Python-like синтаксисом, так-что троллинг про тормоза не к месту.

    А сама идея - прикольная, поработав над проектом, можно прокачаться и в Ruby и в Python, еще бы практическое применение ему найти.

     
     
  • 3.24, Аноним, 07:18, 07/02/2013 [^] [ответить] [смотреть все]  
  • +5 +/
    Про яву жабисты тоже так говорят Ну да, по сравнению с классическим питоном ява... весь текст скрыт [показать]
     
     
  • 4.25, Аноним, 08:12, 07/02/2013 [^] [ответить] [смотреть все]  
  • –4 +/
    За счет allocator действительно java быстрее C C при частом выделении освобожд... весь текст скрыт [показать]
     
     
  • 5.29, ВовкаОсиист, 09:30, 07/02/2013 [^] [ответить] [смотреть все]  
  • +7 +/
    для тех кто в танке, в реализациях аллокатора, алгоритм сводится к тому, что после освобождения конкретной памяти, физически она висит в пространстве и ждёт очередную порцию мелких аллоков внутри этого самого куска, дабы избежать фрагментации. Задолбали со своими криками про "жаба быстрее С/С++", будто бы жаба написана на чём-то сферическом.
     
  • 5.52, Аноним, 12:52, 07/02/2013 [^] [ответить] [смотреть все]  
  • +4 +/
    В C++ аллокатор'ы можно свои понаписать, и оптимизировать их под свои нужды.
     
     
  • 6.61, rshadow, 14:54, 07/02/2013 [^] [ответить] [смотреть все]  
  • +3 +/
    Более того, любой уважающий себя, нагруженный проект на сях к этому рано или поз... весь текст скрыт [показать]
     
  • 6.69, Аноним, 21:40, 07/02/2013 [^] [ответить] [смотреть все]  
  • +1 +/
    И в си Ну а жабисты понятное дело вынуждены кушать то что спустили божки свыше ... весь текст скрыт [показать]
     
  • 5.68, Аноним, 21:39, 07/02/2013 [^] [ответить] [смотреть все]  
  • +1 +/
    На сях и плюсах ВНЕЗАПНО можно использовать свой кастомный алокатор Любой Впло... весь текст скрыт [показать]
     
  • 4.55, energia, 13:22, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    в специально подогнанных под нее тестах в реальности 30-40 раз будет... весь текст скрыт [показать]
     
     
  • 5.70, Аноним, 21:42, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    Да не, это в обычных Вон бенч на quicklz com например - алгоритм сжатия, один и... весь текст скрыт [показать]
     
  • 3.53, Тутутиту, 12:52, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    Да мерзость Явы не в ее медлительности - это даже почти не грех, тем более, чт... весь текст скрыт [показать]
     
     
  • 4.73, Аноним, 22:47, 07/02/2013 [^] [ответить] [смотреть все]  
  • +1 +/
    Зато пока офисный пакет с явой взлетит чтобы открыть один ср ный CSVшник на 5 ки... весь текст скрыт [показать]
     
  • 2.9, Lain_13, 02:20, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Тесты показывают, что на JS возможна производительность близкая к C V8 в основн... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.12, Аноним, 03:42, 07/02/2013 [^] [ответить] [смотреть все]  
  • +2 +/
    Синтетические - может быть В реальной жизни он медленнее на порядки и всегда бу... весь текст скрыт [показать]
     
     
  • 4.17, Lain_13, 06:35, 07/02/2013 [^] [ответить] [смотреть все]  
  • +4 +/
    На порядки медленнее Питон PyPy на порядок, CPython на все два порядка Всё зав... весь текст скрыт [показать]
     
     
  • 5.75, Аноним, 22:49, 07/02/2013 [^] [ответить] [смотреть все]  
  • –1 +/
    но на JS написать медленный код - как делать нефиг, а вот быстрый - надо долг... весь текст скрыт [показать]
     
     
  • 6.85, Lain_13, 03:10, 08/02/2013 [^] [ответить] [смотреть все]  
  • +1 +/
    Если ты специально не пытаешься использовать одну переменную для всех мыслимых ц... весь текст скрыт [показать]
     
  • 3.13, AnonuS, 03:57, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    И что ты этим хотел сказать Хотел нам пояснить принципиальную невозможность ген... весь текст скрыт [показать]
     
     
  • 4.18, Lain_13, 06:38, 07/02/2013 [^] [ответить] [смотреть все]  
  • +2 +/
    То, что компилятор написанный на высокоуровневом языке может позволить выполнять... весь текст скрыт [показать]
     
     
  • 5.20, Аноним, 07:12, 07/02/2013 [^] [ответить] [смотреть все]  
  • –1 +/
    А что, сам pypy при выполнении питонятины уже обгоняет си Или уже не является к... весь текст скрыт [показать]
     
     
  • 6.26, Lain_13, 08:18, 07/02/2013 [^] [ответить] [смотреть все]  
  • –1 +/
    Вероятно ты не понял, но PyPy компилирует код в бинарный и ничего не исполняет ... весь текст скрыт [показать]
     
     
  • 7.33, Аноним, 09:49, 07/02/2013 [^] [ответить] [смотреть все]  
  • +1 +/
    Путаете CPython и Cython В машинный код компилируется последний Первый 8212 ... весь текст скрыт [показать]
     
     
  • 8.44, Lain_13, 10:32, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    Ты прав, путаю, но всё же CPython это интерпретатор и компилятор 8212 он ведь... весь текст скрыт [показать]
     
     
  • 9.47, pavel_simple, 10:42, 07/02/2013 [^] [ответить] [смотреть все]  
  • +3 +/
    кони, люди ... весь текст скрыт [показать]
     
     
  • 10.48, Lain_13, 10:48, 07/02/2013 [^] [ответить] [смотреть все]  
  • +2 +/
    Ну ладно, ладно, CPython это интерпретатор байт-кода. Легче стало?
     
     
  • 11.65, GentooBoy, 19:52, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    ага отлегло прям
     
  • 7.76, Аноним, 22:56, 07/02/2013 [^] [ответить] [смотреть все]  
  • –1 +/
    IIRC он умеет только урезанный субсет питона с уймой ограничений Ага, понятно, ... весь текст скрыт [показать]
     
  • 6.54, Тутутиту, 12:53, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    Да вроде как да... весь текст скрыт [показать]
     
  • 2.19, Аноним, 07:12, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    > Ждём PHP на JavaScript.

    Накаркаешь ведь :)

     
  • 1.2, GentooBoy, 00:51, 07/02/2013 [ответить] [смотреть все]  
  • +21 +/
    Тонкий троллинг Ruby со стороны Python
     
     
  • 2.5, Аноним, 01:05, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    То ли еще будет, когда эту штуку на самом pypy запустят
     
     
  • 3.10, Lain_13, 02:23, 07/02/2013 [^] [ответить] [смотреть все]  
  • +1 +/
    Так они практически это и сделали ... весь текст скрыт [показать]
     
  • 3.21, Аноним, 07:13, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    > То ли еще будет, когда рубисты в отместку напишут интерпретатор питона :)
     
     
  • 4.35, риг, 09:56, 07/02/2013 [^] [ответить] [смотреть все]  
  • –1 +/
    Точнее когда Еще точнее - никогда Писалка не выросла ... весь текст скрыт [показать]
     
     
  • 5.57, arisu, 14:32, 07/02/2013 [^] [ответить] [смотреть все]  
  • +2 +/
    писалка-то на месте, только нафига им змей-кастрат руби как-то помощней и покра... весь текст скрыт [показать]
     
  • 5.77, Аноним, 23:05, 07/02/2013 [^] [ответить] [смотреть все]  
  • +1 +/
    Пипитонисты все меряются пипи ... весь текст скрыт [показать]
     
  • 4.72, piteri, 22:18, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    На чём?
     
     
  • 5.74, Andrey Mitrofanov, 22:48, 07/02/2013 [^] [ответить] [смотреть все]  
  • +3 +/
    на веществах. питонисты отсыпят.
     
  • 2.34, ffirefox, 09:52, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +3 +/
    Ну, почему сразу толлинг Просто теперь рекурсивно можно создавать Ruby и Pyth... весь текст скрыт [показать] [показать ветку]
     
  • 2.49, Аноним, 11:12, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Еще большим троллингом будет написть питон на Ruby, чтобы продемонстрировать пит... весь текст скрыт [показать] [показать ветку]
     
  • 1.4, Аноним, 01:05, 07/02/2013 [ответить] [смотреть все]  
  • +1 +/
    А где же потребление оперативной памяти ... весь текст скрыт [показать]
     
  • 1.7, Аноним, 01:28, 07/02/2013 [ответить] [смотреть все]  
  • +1 +/
    ржал в голос... весь текст скрыт [показать]
     
     
  • 2.8, Aleks Revo, 01:38, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    "улыбайтесь шире - шеф любит идиотов" ©
     
     
  • 3.36, Pro, 09:56, 07/02/2013 [^] [ответить] [смотреть все]  
  • +3 +/
    Ну не все шефы такие же как и твой шеф =)  Повезло тебе с ним =)
     
  • 1.11, Аноним, 02:30, 07/02/2013 [ответить] [смотреть все]  
  • +3 +/
    У меня когнитивный диссонанс Столько взаимоисключающих параграфов в 6-ти словах... весь текст скрыт [показать]
     
     
  • 2.15, Аноним, 05:28, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    кретины, способные лишь на повторение шаболонных фраз к месту и без, продолжают ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.56, Аммоним, 14:12, 07/02/2013 [^] [ответить] [смотреть все]  
  • +2 +/
    У вас запятая после предлога.
     
     
  • 4.86, Аноним, 09:54, 10/02/2013 [^] [ответить] [смотреть все]  
  • –2 +/
    У него все верно, предлог относится к причастному обороту.
     
     
  • 5.87, Аноним, 09:56, 10/02/2013 [^] [ответить] [смотреть все]  
  • +/
    фейл, оборот не причастный, и ошибка в шаболонности, посыпаю голову пеплом В лю... весь текст скрыт [показать]
     
  • 2.22, Аноним, 07:16, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • –3 +/
    Да ладно вам, просто у питонистов свои понятия о высокой производительности ... весь текст скрыт [показать] [показать ветку]
     
  • 1.14, mumu, 04:26, 07/02/2013 [ответить] [смотреть все]  
  • +2 +/
    PyPy уже года три как всё не могут Python 3 реализовать. Хотя хвалились, что за счёт высокоуровневости на PyPy новые плюшки и сахарок пишутся и реализуются в разы проще, чем на CPython.

    Неужели руби проще написать, чем py3k?

     
     
  • 2.16, Аноним, 05:29, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    потому не могут, что стандарт 3 x меняется... весь текст скрыт [показать] [показать ветку]
     
  • 2.23, Аноним, 07:17, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Так они и руби реализовали 1 9, тогда как там уже 2 0 есть ... весь текст скрыт [показать] [показать ветку]
     
  • 1.27, Аноним, 09:26, 07/02/2013 [ответить] [смотреть все]  
  • +/
    напишите в заголовке RPython вместо Python
     
  • 1.28, Аноним, 09:27, 07/02/2013 [ответить] [смотреть все]  
  • –1 +/
    Поглумились в жесткой форме над питоном Язык, пригодный для написания Ruby ... весь текст скрыт [показать]
     
     
  • 2.31, anonymous, 09:43, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Ну да, а создатели Ruby поглумились над C А создатели JRuby 8212 над Java А... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.41, Аноним, 10:29, 07/02/2013 [^] [ответить] [смотреть все]  
  • –1 +/
    В JRuby по крайней мере есть очевидный смысл - простота размещения Ruby-приложен... весь текст скрыт [показать]
     
     
  • 4.78, Аноним, 23:07, 07/02/2013 [^] [ответить] [смотреть все]  
  • +1 +/
    > с питоном по бредогенерации на целевых машинах.

    //fixed


     
  • 1.37, YetAnotherOnanym, 10:02, 07/02/2013 [ответить] [смотреть все]  
  • +/
    Оставлю в сторонке желание поупражняться в остроумии и задамся простым вопросом: а смысл?
     
     
  • 2.39, анон, 10:10, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    На питоне относительно проще, чем на си, напейсать годный интерпритатор Ну и по... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.42, YetAnotherOnanym, 10:30, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    То есть все предыдущие - негодные?
     
  • 2.40, anonymous, 10:21, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Кто спасёт хипстеров-рубильников от тормозов Только бравые питонисты ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.45, YetAnotherOnanym, 10:34, 07/02/2013 [^] [ответить] [смотреть все]  
  • +1 +/
    спасение утопающих - дело рук других утопающих ... весь текст скрыт [показать]
     
  • 3.79, Аноним, 23:08, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    Гадюки спасают рубильники Новое слово в науке и технике ... весь текст скрыт [показать]
     
  • 2.62, Crazy Alex, 15:52, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Если оно получилось шустрее  чем не смысл?
     
  • 1.43, Anonymous from da LOR, 10:30, 07/02/2013 [ответить] [смотреть все]  
  • +2 +/
    We need to go deeper.
     
  • 1.46, exn, 10:37, 07/02/2013 [ответить] [смотреть все]  
  • +/
    > I’m extraordinarily pleased to today announce Topaz, a project I started 10 months ago, to create a brand new implementation of the Ruby programming language (version 1.9.3)

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

     
     
  • 2.67, ызусефещк, 20:52, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    > выробатывать

    Кто в школе хорошо учился кирпичи не укладывает

     
     
  • 3.71, exn, 22:08, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    > Кто в школе хорошо учился кирпичи не укладывает

    петросянщина

     
  • 3.80, Аноним, 23:09, 07/02/2013 [^] [ответить] [смотреть все]  
  • +1 +/
    Вот вы в школе учились плохо Судя по отсутствию знаков препинания ... весь текст скрыт [показать]
     
     
  • 4.88, pavlinux, 03:01, 12/02/2013 [^] [ответить] [смотреть все]  
  • –1 +/
    Ну-ка профессор, поделись, где тут запятая нужна ... весь текст скрыт [показать]
     
     
  • 5.89, arisu, 03:06, 12/02/2013 [^] [ответить] [смотреть все]  
  • +/
    вот ты, например, как раз запятую пропустил а выше 8212 тире надо которое т... весь текст скрыт [показать]
     
     
  • 6.90, pavlinux, 03:31, 15/02/2013 [^] [ответить] [смотреть все]  
  • +/
    Я специально, раздельно как-то не то А надо с заглавной писать, да и которо... весь текст скрыт [показать]
     
     
  • 7.91, arisu, 03:46, 15/02/2013 [^] [ответить] [смотреть все]  
  • +/
    не надо это не важно, да вдобавок поддаётся автоматической починке а вот скрип... весь текст скрыт [показать]
     
  • 1.50, Аноним, 11:19, 07/02/2013 [ответить] [смотреть все]  
  • +1 +/
    Хорошая шутка.
     
  • 1.58, t0t, 14:34, 07/02/2013 [ответить] [смотреть все]  
  • –2 +/
    Странные ребята комментаторы. "встретились два тормоза", "Си рвут питон по скорости" и т.д.
    Напоминает ситуацию на дороге: Mercedes SLK едет по городу 60 км/ч и останавливается на красном, а его обгоняет пионер на Запоре и кричит: г*** твоя машина, еле ездит. (Потом с перекрёстка доносится бабах).
    Скажите, какой смысл в производительности *кода*, скажем, в кодировщике видео? Ну и что, что он будет кодировать 100500ГБ/с, если винт (или даже ССД) больше 200МБ/с не запишет? Что вы его на Си напишете, что на АСМе, что на бейсике -- ничего не изменится.
    Куда вы торопитесь? На красный свет? Или на тот свет???
    Смотрите реально на вещи, господа комментаторы.
     
     
  • 2.59, t0t, 14:36, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • –3 +/
    ЗЫ Как вы догадались, Си -- это Запор по сравнению с Питоном-мерседесом по удоб... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.60, Аноним, 14:41, 07/02/2013 [^] [ответить] [смотреть все]  
  • +3 +/
    По удобству разработки это питон - Запор по сравнению с Ruby-мерседесом.
     
     
  • 4.66, GentooBoy, 19:57, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    Ездите на своих мерседесах, а мы поставим в таёту двигатель от сушки, и прикрутим шасси от Б-29. И поедим быстро и с комфортом.
     
     
  • 5.81, Аноним, 23:11, 07/02/2013 [^] [ответить] [смотреть все]  
  • +1 +/
    Не знаю что вы там съесть собрались, а вот городские легенды о мужике с пороховы... весь текст скрыт [показать]
     
  • 2.63, Crazy Alex, 15:57, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Ну и примерчик вы выбрали.

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

     
  • 1.64, VoDA, 16:27, 07/02/2013 [ответить] [смотреть все]  
  • +/
    Им надо написать Ruby на Jython, причем саму JVM запускать в виде JavaScript приложения поверх браузера... а браузер, конечно же, пускать поверх ОС, которая живет на виртуальном сервера, сам сервер в виртуальной машине.

    Кул-хацкеры атакуэ!!!

     
     
  • 2.82, Аноним, 23:12, 07/02/2013 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Для полноты картины надо сначала в браузере операционку загрузить ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.83, Andrey Mitrofanov, 23:24, 07/02/2013 [^] [ответить] [смотреть все]  
  • +/
    > Для полноты картины надо сначала в браузере операционку загрузить.

    В кему-ляторе на js. //Полнота дополнена.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor