Size: a a a

Compiler Development

2021 February 24

ОШ

Олег Шаболовский... in Compiler Development
MrSmith
Где то тут я кидал работу в которой автоматический рефакторинг люди более менее классифицировали и составили огромный каталог работ
Привет!
Можешь линкануть сообщение? Или дать название статьи?
источник

DP

Dmitry Ponyatov in Compiler Development
Dmitry Lunin
Привет! Пишу сейчас транслятор Python -> Javascript. Если кто знает — подскажите, пожалуйста, релевантную литературу/статьи/идеи, что почитать по теме разработки таких вещей
А вручную получается? а то как бы задача человеку не сказать чтобы очень лёгкая...
источник

DL

Dmitry Lunin in Compiler Development
Олег Шаболовский
Привет!
Можешь линкануть сообщение? Или дать название статьи?
Насколько я понимаю, это
источник

DL

Dmitry Lunin in Compiler Development
Переслано от MrSmith
источник

ОШ

Олег Шаболовский... in Compiler Development
Dmitry Lunin
Насколько я понимаю, это
Спасибо!
источник

DL

Dmitry Lunin in Compiler Development
Dmitry Ponyatov
А вручную получается? а то как бы задача человеку не сказать чтобы очень лёгкая...
Задача в том, чтобы часть вычислений с бекенда уметь автоматически переносить на фронтенд. Соответственно если какую-то часть транслировать не получается, то можно её "транслировать" в запрос к серверу
источник

DP

Dmitry Ponyatov in Compiler Development
Dmitry Lunin
Задача в том, чтобы часть вычислений с бекенда уметь автоматически переносить на фронтенд. Соответственно если какую-то часть транслировать не получается, то можно её "транслировать" в запрос к серверу
1) взять модель вычислений
2) абстрагировать её в гомоиконичную форму — отобразить на структуры данных
3) реализовать интерпретатор структур данных для обоих языковых стеков: фронта и бека
4) создать метод (бинарной) сериализации программных объектов, чтобы гонять туда/сюда части программ
источник

DP

Dmitry Ponyatov in Compiler Development
например в JS есть объекты, в которые можно добавить возможность упорядоченного хранения подобъектов
{ value: 'scalar', nest:[] }
аналогичный базовый Object пишется на Python в два пука
потом берём 4 главу SICP, и применяем подходы Лиспа с eval/apply, но применяем их не к спискам, а к таким объектам
источник

DP

Dmitry Ponyatov in Compiler Development
для типизации стоит наверно еще добавить поле type в базовую структуру
источник

DP

Dmitry Ponyatov in Compiler Development
Object = { type:'class', value:'Object' , nest:[] }
Primitive = { type:'class', value:'Primitive', super: Object, nest: [] }
Number = { type:'class', value:'Number', super: Primitive, nest: [] }
pi = { type:Number, value:3.1415, nest: [] }
Fn = { type:'class', value:'Fn', super: Active, nest:[] }
sin = { type:Fn, value:'sin', nest:[ (x) => sin(x) ] }
источник

s

suhr in Compiler Development
Dmitry Ponyatov
например в JS есть объекты, в которые можно добавить возможность упорядоченного хранения подобъектов
{ value: 'scalar', nest:[] }
аналогичный базовый Object пишется на Python в два пука
потом берём 4 главу SICP, и применяем подходы Лиспа с eval/apply, но применяем их не к спискам, а к таким объектам
Изобретая в процессе свой язык.
источник

DP

Dmitry Ponyatov in Compiler Development
ну что-то типа Лиспа или Clojure получится, да — я такую штуку называю для себя EDS: Executable Data Sturucture
источник

DP

Dmitry Ponyatov in Compiler Development
а сверху уже можно синтаксического сахарку сыпануть через генератор парсеров
источник

DP

Dmitry Ponyatov in Compiler Development
а вот снизу как раз уже можно будет подпирать всякими компиляциями в JS/WASM на фронте
источник

Vk

Voffka kozhaev in Compiler Development
Коллеги, добрый день
источник

Vk

Voffka kozhaev in Compiler Development
Не знал, что есть такой чат. Скажите, здесь интересуются визуальными языками?
источник

IP

Iaroslav Postovalov in Compiler Development
Voffka kozhaev
Не знал, что есть такой чат. Скажите, здесь интересуются визуальными языками?
Visual C++?
источник

Vk

Voffka kozhaev in Compiler Development
ДРАКОН
источник

IP

Iaroslav Postovalov in Compiler Development
Voffka kozhaev
ДРАКОН
ой ё
источник

Vk

Voffka kozhaev in Compiler Development
Или Р-диаграммы, это поделие покойного Вельбицкого
источник