Size: a a a

2020 April 21

p

polunin.ai in rust_offtopic
Stanislav Popov
короче я просто не понимаю почему бы не сделать самый тупой слоупочный интерпретатор раста, интероптить с прекомпилированными кусками, интерпретировать какието отдельные модули
Дорого
источник

p

polunin.ai in rust_offtopic
Тогда на каждое обновление компилятора придется обновлять твой интерпретатор
источник

В

Вафель in rust_offtopic
Also, интерпритатор раста и так существует
источник

DS

Doge Shibu in rust_offtopic
Stanislav Popov
предвидя ваши возражения - интерпретируемость все же должна быть фундаментом для разработки. кодер будет хотеть иметь возможность всегда покрутить что ему пришло, побрутфорсить обьект таким образом чтобы получить своё. да я понимаю что те кто вышел из статики привыкли без этого обходится, эта тема уже поднималась с @mersinvald и я понял что можно писать мини тесты но это не совсем катит. бывает так что стейт слишком крупный или жирный, бывает так что воспроизвести стейт затратно, нужно писать механизм типа "просто дампни текущий стейт в файлик и воспроизведи", вобщем я понял что это удобный хороший способ но это все же недостаточно гибко и требует всю архитектуру делать "рекаверабле"

короче есть две нерешенные проблемы
- брейк он паник
- возможность в отладчике вызывать  методы

и я уже столько лютого треша на эти темы нагуглил. вот например https://gist.github.com/spacejam/15f27007c0b1bcc1d6b4c9169b18868c

вобщем есть у меня ряд задач где просто страшно отказываться от какого то низового уровня, страх потерять контроль, страх потерять возможность отладить. причем это же не просто так, это вот буквально в любом ботике, любом кравлере - вот происходит отсос - можно вытащить стейт всех обьектов, изучить, потраить какието рантайм тулзы
Поздравляю, ты переизобрел жирные рантаймы с вм, типа jvm и .net core, там есть всё, что тебе нужно
источник

DS

Doge Shibu in rust_offtopic
Они буквально работают вначале как интерпретаторы, jit компиля только тот код, где это важно.
источник

DS

Doge Shibu in rust_offtopic
При этом у них есть в отладке и исполнение методов и брейк на любых исключениях и т.д.
источник

p

polunin.ai in rust_offtopic
Но они все таки тащат ВМ везде
источник

DS

Doge Shibu in rust_offtopic
Возможность просто так подключиться извне к любому приложению со средствами мониторинга и посмотреть, что у него внутри. (см. visual vm и т.п.)
источник

p

polunin.ai in rust_offtopic
А он предлагает интерпретировать дебаг, а распространять бинари без вм
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
Но они все таки тащат ВМ везде
Ну такие возможности не бывают бесплатными, в особенности, когда речь идёт про мониторинг в рантайме
источник

p

polunin.ai in rust_offtopic
Вафель
Also, интерпритатор раста и так существует
Покажи
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
А он предлагает интерпретировать дебаг, а распространять бинари без вм
Ты так можешь с аот компиляцией делать типа graal vm или mono-aot
источник

p

polunin.ai in rust_offtopic
Зачем си шарпы эти если есть раст
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
Зачем си шарпы эти если есть раст
Чтобы писать бизнес-логику, не парясь с низкоуровневыми вопросами и получать более-менее разумную производительность.
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
Зачем си шарпы эти если есть раст
У раста слишком много трейдоффов ради производительности
источник

DS

Doge Shibu in rust_offtopic
А даже если ты решишь всё боксить, бегать с кучей дин трейтов и т.п., то это всё равно будет дико неудобно по сравнению с любым языком под .net и jvm
источник

p

polunin.ai in rust_offtopic
Doge Shibu
А даже если ты решишь всё боксить, бегать с кучей дин трейтов и т.п., то это всё равно будет дико неудобно по сравнению с любым языком под .net и jvm
Не нужно писать на расте как на жабе
источник

p

polunin.ai in rust_offtopic
У раста более выразительная система типов чем в си шарпе, и за счёт этого можно выезжать
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
Не нужно писать на расте как на жабе
А тогда у тебя свои проблемы начинаются
источник

DS

Doge Shibu in rust_offtopic
Потому что система типов не развита настолько, насколько нужно
источник