LINUX.ORG.RU

Начата работа по замене Racket VM на Chez Scheme

 , ,


0

6

Основной разработчик виртуальной машины Racket планирует отказ от собственного компилятора Racket VM в пользу компилятора Chez Scheme.

Переход на Chez Scheme проводится параллельно с переписыванием парсера, макропроцессора и других компонент Racket с Си на Racket, что, в свою очередь, позволит упростить подключение и других компиляторов (например, в Javascript).

Chez Scheme, тем не менее, станет основным компилятором в Racket 7 и позволит устранить падение производительности и увеличение потребления памяти, связанное с вышеуказанным переписыванием низкоуровневых компонент на Racket.

Предварительная рабочая версия с новым компилятором ожидается к концу года.

Chez Scheme — высокопроизводительный компилятор языка Scheme, коммерческая разработка, приобретённая Cisco Systems в 2012 г. В 2016 исходные коды Chez Scheme были опубликованы под лицензией Apache.

Исходное сообщение в Google Groups

Обсуждение на Hacker News

Сравнение производительности реализаций Scheme



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

Лишперы не асилили написать себе помпилятор. Вернее, скимеры, у лишперов есть борщелишп. Заголовок такой, будто VM заменяют на компилятор.

Virtuos86 ★★★★★
()

Chez Scheme — высокопроизводительный компилятор языка Scheme, коммерческая разработка, приобретённая Cisco Systems в 2012 г.

Зачем серьёзные, деловые люди полезли в борщехлёбство?

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

ИБМ, Гугель, Сиска... Похоже, ты начал чего-то подозревать...

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

Зачем серьёзные, деловые люди полезли в борщехлёбство?

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

anonymous
()

Не знаю даже, хорошо ли это. По бенчмарку они шли почти вровень, с другой стороны у Racket есть базовые конструкции, которых в Chez нет (финалайзеры, эфемероны, потоки). Как бы не поломали...

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

Мэтью ожидает ускорения парсинга+макропроцессора+компилятора в два раза; бенчмарки более-менее с этой цифрой согласуются (что будет с числодробилками — сложно сказать).

Насчёт эфемеронов и потоков сказано в Readme:

 * Racket's delimited continuations, continuation marks, threads, and
   events are mostly in place (see "core/control.ss",
   "core/engine.ss", and the source for "thread.rktl"), but to
   integrate I/O, the scheduler needs access to the OS's
   select()/epoll()/kqueue()/WaitMultipleEvents().

 * For futures, Chez Scheme exposes OS-level threads with limited
   safety guarantees. An implementation of futures can probably take
   advantage of threads with thread-unsafe primitives wrapped to
   divert to a barrier when called in a future.

 * Ephemerons require support from Chez Scheme. (Pull request
   submitted.)

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

Насколько я понимаю, Cisco в 2012 г. переманили к себе автора (R. Kent Dybvig), а его творение прикупили заодно. Что Кент делал/делает в Cisco и почему они открыли коды, никому, кажется, не известно.

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

Остаётся надеяться, что Мэтью так или иначе позаботится об этом (можно его и в рассылке спросить, но лень). Макропроцессор в любом случае останется от Racket; возможно, какие-то рэкетовские оптимизации, которые делаются на уровне раскрытия лиспа в лисп, благодаря этому не потеряются.

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

nucleic в 2 раза медленнее в Chez, ray — в 3 раза.

Кроме того, эти тесты написаны на голой Scheme, без применения, например, unsafe-операций, которые есть в Racket.

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

Кроме того, эти тесты написаны на голой Scheme, без применения, например, unsafe-операций, которые есть в Racket.

Вот-вот. Надо будет, как только выйдет racket-7, прогнать тесты по сравнению с racket-6.8. Если будет сильная просадка производительности, что убеждать Мэтью или возвращаться назад или что-то придумывать (иначе будет на одну меньше быструю VM для Scheme).

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

Grammar Nazi усиливаются? Похоже, третья мировая будет не ядерной, а виртуальной.

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

Наивный юноша думает, что 110 миллионов вкладывают в поделку из-за того, что в ней где-то есть код на лишпе.

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

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