Всех приветствую!
-- Разбираюсь с одной специфической мыслью, не уверен, что кто-то с ходу ответит, но вдруг... Может кто нибудь знает как в Pharo выполнить выражение из строки? Т.е. имеем предположим строку '2 + 3' и в какой то момент хотим получит результат этого выражения. Пока понял только что можно получить RBMessageNode с разложенным по полочкам кодом (RBParser parseExpression: '2 + 3'). Дальше видимо нужно скормить это как-то OpalCompiler... Но пока не разобрался (задокументировано слабо, а моей подготовки не хватает понять на ощупь) -- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group". Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email]. Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout. |
Добрый день. Все просто: OpalCompiler evaluate: '1 + 2' 16 ноября 2016 г., 15:25 пользователь Александр <[hidden email]> написал:
-- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group". Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email]. Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout. |
Большое спасибо.
-- Вы сохранили мне много часов времени :) среда, 16 ноября 2016 г., 17:37:29 UTC+3 пользователь Denis Kudriashov написал:
-- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group". Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email]. Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout. |
17 ноября 2016 г., 10:31 пользователь Александр <[hidden email]> написал:
…Что говорит о том, что с дизайном этого аспекта что-то не так? Не очевидно, где искать объект, который выполняет нужную работу. Вроде как хочется в String положить какой-нибудь #evaluate? Или документирующие тесты написать? -- Best regards, Dennis Schetinin -- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group". Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email]. Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout. |
18 ноября 2016 г., 7:25 пользователь Dennis Schetinin <[hidden email]> написал:
Положить код в строку, конечно, кажется очевидным. Но это приведет к еще большему раздуванию строки, чего пытаются избегать. Кроме того, для #evaluate в общем случае нужно иметь возможность указать bindings и прочее окружение для привязки переменных, глобальных имен, различные ограничения. И в таком виде метод у строки будет не так прост. Или документирующие тесты написать? Тесты к этому поведению есть. Но их поиск не сильно отличается от исходной задачи. -- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group". Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email]. Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout. |
18 ноября 2016 г., 10:26 пользователь Denis Kudriashov <[hidden email]> написал:
В таких случаях я обычно начинаю инспектировать существующие тулзы, которые уже выполняют то, что мне нужно. Через "halo menu/inspect morph" обычно сразу видно, что делает элемент меню или кнопка, и можно сразу вживую продебажить, как оно работает. -- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group". Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email]. Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout. |
пятница, 18 ноября 2016 г., 12:31:25 UTC+3 пользователь Denis Kudriashov написал:
Видимо так... Я вот и залез в итоге не совсем по адресу в дебри RBParser и AST. Мне бы лично хватило бы почитать подробной документации ;) Но понятно, что глубины OpalCompiler это не то место в которое часто пытаются соваться и следовательно написание доков к нему не стоит в приоритете, так что я не жалуюсь... Хотя конечно странно, что по Фаро нет какой нибудь Википедии даже на английском. -- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group". Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email]. Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout. |
18 ноября 2016 г., 15:28 пользователь Александр <[hidden email]> написал: Мне бы лично хватило бы почитать подробной документации ;) Документацию кто-то должен не забывать обновлять по мере развития документируемой системы… -- Best regards, Dennis Schetinin -- http://groups.google.ru/group/sugr --- Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group". Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email]. Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout. |
Free forum by Nabble | Edit this page |