[Анонс] Запускаем Erlang код прямо из браузера

641 views
Skip to first unread message

Sergey Prokhorov

unread,
Feb 11, 2015, 5:47:34 AM2/11/15
to erlang-...@googlegroups.com
Кто то уже видел, но, тем не менее. Зарелизил веб-приложение, которое позволяет запускать произвольный Erlang код прямо из браузера. Находится пока тут:


Как работает
Код передаётся на сервер (cowboy), который на каждый запрос запускает Erlang VM в лёгком Linux контейнере https://github.com/thestinger/playpen. Там стоит ограничение только на сеть, память и время исполнения, а в остальном - делай что хочешь.

Что есть
Кроме исполнения поддерживается так же компиляция в различные промежуточные представления (core erlang, разворот макросов, erlang assembler, BEAM assembler etc).
И всё это на любой версии Erlang VM (сейчас доступно последние 8 релизов, но по запросу добавлю любой другой).
В нагрузку, есть возможность сохранить сниппет и получить короткую ссылку a-la pastebin.

Возможные юзкейсы
* Проверить работоспособность кода на различных версиях Erlang
* Расшарить с кем-то сниппет
* Попробовать запустить опасный код
* Быстро посмотреть в какие erl ASM инструкции скомпилируется код
* Для обучения Erlang на различных конференциях и воркшопах (обучаемым не обязательно устанавливать себе Erlang).
* В блогах и статьях - возможность запустить пример/сниппет и посмотреть результат вживую.

Идея была позаимствована у https://play.rust-lang.org/

Будет здорово, если пошарите ссылку или подкинете какой-нибудь интересный сниппет для раздела "Examples".

Max Lapshin

unread,
Feb 11, 2015, 6:23:06 AM2/11/15
to erlang-...@googlegroups.com
Да круто вообще!

--
Вы получили это сообщение, поскольку подписаны на группу "Erlang по-русски".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес erlang-russia...@googlegroups.com.
Чтобы отправлять сообщения в эту группу, отправьте письмо на электронный адрес erlang-...@googlegroups.com.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.

Timofey Koolin

unread,
Feb 11, 2015, 6:33:33 AM2/11/15
to erlang-...@googlegroups.com
Здорово.

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

Grey Kristy

unread,
Feb 11, 2015, 8:19:10 AM2/11/15
to erlang-...@googlegroups.com

а почему не показывается результат выполнения функции? Если играться с кодом, то обычно удобнее просто посмотреть результат, а не возится с io

Ilya I. Ashchepkov

unread,
Feb 11, 2015, 8:31:41 AM2/11/15
to erlang-...@googlegroups.com
Очень прикольная штука.

Несколько вопросов:
1. AST
2. Возможность компилить несколько файлов, эдакие приложения. С возможностью задания какой файл во что компилировать - будет удобно для parse transform'ов.
3. Не планируете открыть исходники? Я бы сам ast сделал.

--
Вы получили это сообщение, поскольку подписаны на группу "Erlang по-русски".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес erlang-russia...@googlegroups.com.
Чтобы отправлять сообщения в эту группу, отправьте письмо на электронный адрес erlang-...@googlegroups.com.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.



--
С уважением,
Ащепков Илья koc...@gmail.com

Sergey Prokhorov

unread,
Feb 11, 2015, 9:12:54 AM2/11/15
to erlang-...@googlegroups.com
Ну так то уже на reddit, Hacker News закинули, в английскую рассылку, в твиттере. На хабре нужно статью всё-же какую-то более подробную про внутреннее устройство писать. Может на выходных попробую.

среда, 11 февраля 2015 г., 14:33:33 UTC+3 пользователь Timofey Koolin написал:

Sergey Prokhorov

unread,
Feb 11, 2015, 9:14:35 AM2/11/15
to erlang-...@googlegroups.com
В какой-то момент хотел так сделать, но что-то остановило, не помню уже. Сделаю второй подход, может добавлю. Спасибо.

среда, 11 февраля 2015 г., 16:19:10 UTC+3 пользователь Grey Kristy написал:

Sergey Prokhorov

unread,
Feb 11, 2015, 9:19:22 AM2/11/15
to erlang-...@googlegroups.com
среда, 11 февраля 2015 г., 16:31:41 UTC+3 пользователь Ilya Ashchepkov написал:
Очень прикольная штука.
Спасибо!
 
Несколько вопросов:
1. AST
Да, руки не дошли пока. Но в TODO есть.
 
2. Возможность компилить несколько файлов, эдакие приложения. С возможностью задания какой файл во что компилировать - будет удобно для parse transform'ов.
Ну хз, это вряд-ли. Как то сложно слишком. Ни в одном аналогичном сервисе такого функционала не встречал.
 
3. Не планируете открыть исходники? Я бы сам ast сделал.
Хз, как то планов на этот счет особо не было. Скорее всего через какое то время открою, но не прям скоро.

T0ha

unread,
Feb 12, 2015, 10:58:31 PM2/12/15
to erlang-...@googlegroups.com
Здорово. Похоже скоро неплохо пригодится. Для  обучения и примеров в статьях вообще замечательно. Спасибо!

среда, 11 февраля 2015 г., 15:47:34 UTC+5 пользователь Sergey Prokhorov написал:
Reply all
Reply to author
Forward
Message has been deleted
0 new messages