-
- В любом случае, то что наваяют "часные лица" я бы хранил в виде сугубо текстовых констант, которые скармливал бы интерпретатору. - Скрипач(12.04.2019 15:39)
- видимо я что-то упускаю из вида, а примером не поделитесь хоть издали? не понимаю как Вы предлагаете проверять на непротиворечивость данных допустим, это же адская бизнес-логика какая-то должна быть с кучей правил - NAUT(12.04.2019 20:40)
- Я писал, у меня не дошли руки, реальной потребности нет, прикладной код пишут те же люди, что допущены к системному. Скрипач(769 знак., 12.04.2019 20:48 - 20:58)
- Препроцессор уже придуман, до нас - VLLV(12.04.2019 15:48)
- Ин-тер-при-та-тор. Потому что перезагрузка пользовательского кода не должна подразумевать перезагрузки системного. Неправильно это. - Скрипач(12.04.2019 15:50)
- А как же "не любой ценой"? :-) - SciFi(12.04.2019 15:59, ссылка)
- И? В чем вы видите "большую цену"? - Скрипач(12.04.2019 16:39)
- Большая цена - в попытках приобщить ТС к моде :-) - SciFi(12.04.2019 16:52, ссылка)
- Сформулируйте, пожалуйста, как-то иначе, каждое слово отдельно - понимаю, предложение целиком - нет. - Скрипач(12.04.2019 16:59)
- С трудом уговорили его на X Macro. Уговорить на интерпретатор - неподъёмная задача. - SciFi(12.04.2019 17:01)
- ну, вообще, на базе готового кода, если старшие коллеги советуют, то почему бы и нет... в голове пока не вижу "красоты" интерпретатора, максимум что понимаю, это типа парсера .CFG-файлов каких-нибудь, типа разделенного строками конфигурационного NAUT(932 знак., 12.04.2019 20:16)
- Может и поздно, но оставлю вам пару местных ссылок. - Dingo(18.04.2019 19:48, ссылка, ссылка)
- Он сам решит, как ему лучше. У меня тоже интерпретатор так и не появился. Точнее, он появился совсем в другом месте и совершенно другой роли. Скрипач(121 знак., 12.04.2019 17:06)
- ну, вообще, на базе готового кода, если старшие коллеги советуют, то почему бы и нет... в голове пока не вижу "красоты" интерпретатора, максимум что понимаю, это типа парсера .CFG-файлов каких-нибудь, типа разделенного строками конфигурационного NAUT(932 знак., 12.04.2019 20:16)
- С трудом уговорили его на X Macro. Уговорить на интерпретатор - неподъёмная задача. - SciFi(12.04.2019 17:01)
- Сформулируйте, пожалуйста, как-то иначе, каждое слово отдельно - понимаю, предложение целиком - нет. - Скрипач(12.04.2019 16:59)
- Большая цена - в попытках приобщить ТС к моде :-) - SciFi(12.04.2019 16:52, ссылка)
- И? В чем вы видите "большую цену"? - Скрипач(12.04.2019 16:39)
- Неправильно - это гоуту и множить сущности, программируя для Тини ;) Одна программа, один компилятор, один идеолог, все работает. - VLLV(12.04.2019 15:57)
- Ja-ja, natürlich... Ein Volk, ein Reich, ein Führer! ;О) И эта... Arbeit macht frei! Сцукко, тиньки - латентные авторитаристы. ;О) - mse homjak(13.04.2019 10:53)
- Ну не надо ТАК уж сгущать краски... ))) SERHIO(73 знак., 13.04.2019 01:51)
- Не увидел ничего интересного в этой статье. А пример автоматов с goto вообще жесть, массив функций имеет существенное преимущество - есть переменная "состояние", ее можно в интерфейсе посмотреть, ей можно присвоить тип енум и сразу понятен смысл. VLLV(282 знак., 13.04.2019 08:03)
- Переменная состояния - pt (см.мой пример, выше). Но она не читаема влоб. Это цена за использование прототридов. Скрипач(185 знак., 13.04.2019 11:19 - 11:24)
- А кто заставляет оформлять задержку как отдельное логическое состояние? Убогость goto? VLLV(1352 знак., 13.04.2019 14:14)
- Стоп! Не вижу в тексте. Как в пределах одного состояния проверить условие дать задержку и проверить другое условие? - Скрипач(13.04.2019 14:29)
- Например вот так. VLLV(959 знак., 13.04.2019 16:15)
- Т.е. отдельным состоянием. Так не интересно. - Скрипач(13.04.2019 16:48)
- Не разобрались, зацепившись за слово. Точно не интересно. - VLLV(13.04.2019 16:54)
- evOpOver. Я не прав? - Скрипач(13.04.2019 17:13)
- Это код события, соответствующего окончанию задержки. Разумеется, в системе есть фоновый таймер, отсчет задержек и формирование событий, эти механизмы универсальны для всех состояний, в которых используются, поэтому и вынесены. - VLLV(13.04.2019 17:35)
- А если таких отсчетов несколько, несколько событий и несколько разных case, верно? - Скрипач(13.04.2019 18:37)
- Верно, есть настраиваемые и есть фиксированные. - VLLV(13.04.2019 19:02)
- Ну и чего я тогда не понял? В моей предметной области это не удобно. Слишком много чисто технологических задержек. Дункелс рулит. - Скрипач(13.04.2019 21:04)
- То, что может быть неудобно, я принимаю, сам недавно обсуждал эту тему в команде, чтобы "система" не пожирала ресурсы. Но разговор ушел немного в сторону, от противостояния goto и переменной состояния типа такого: VLLV(854 знак., 13.04.2019 22:45)
- У меня переменная состояния использована под прототриды. Двухуровневая модель состояний - именованные и неименованные. Потому tradeoff между "формальной правильностью" и чистотой/ читабельностью кода. Скрипач(364 знак., 14.04.2019 06:23 - 06:29)
- Будем, только я пока не готов. VLLV(764 знак., 14.04.2019 08:29)
- Будуте готовы- маякните:) Скрипач(1271 знак., 14.04.2019 20:22 - 20:27)
- Будем, только я пока не готов. VLLV(764 знак., 14.04.2019 08:29)
- Неявное использование goto SERHIO(730 знак., 14.04.2019 00:23 - 00:54)
- У меня переменная состояния использована под прототриды. Двухуровневая модель состояний - именованные и неименованные. Потому tradeoff между "формальной правильностью" и чистотой/ читабельностью кода. Скрипач(364 знак., 14.04.2019 06:23 - 06:29)
- То, что может быть неудобно, я принимаю, сам недавно обсуждал эту тему в команде, чтобы "система" не пожирала ресурсы. Но разговор ушел немного в сторону, от противостояния goto и переменной состояния типа такого: VLLV(854 знак., 13.04.2019 22:45)
- Ну и чего я тогда не понял? В моей предметной области это не удобно. Слишком много чисто технологических задержек. Дункелс рулит. - Скрипач(13.04.2019 21:04)
- Верно, есть настраиваемые и есть фиксированные. - VLLV(13.04.2019 19:02)
- А если таких отсчетов несколько, несколько событий и несколько разных case, верно? - Скрипач(13.04.2019 18:37)
- Это код события, соответствующего окончанию задержки. Разумеется, в системе есть фоновый таймер, отсчет задержек и формирование событий, эти механизмы универсальны для всех состояний, в которых используются, поэтому и вынесены. - VLLV(13.04.2019 17:35)
- evOpOver. Я не прав? - Скрипач(13.04.2019 17:13)
- Не разобрались, зацепившись за слово. Точно не интересно. - VLLV(13.04.2019 16:54)
- Т.е. отдельным состоянием. Так не интересно. - Скрипач(13.04.2019 16:48)
- Например вот так. VLLV(959 знак., 13.04.2019 16:15)
- Стоп! Не вижу в тексте. Как в пределах одного состояния проверить условие дать задержку и проверить другое условие? - Скрипач(13.04.2019 14:29)
- А кто заставляет оформлять задержку как отдельное логическое состояние? Убогость goto? VLLV(1352 знак., 13.04.2019 14:14)
- Переменная состояния - pt (см.мой пример, выше). Но она не читаема влоб. Это цена за использование прототридов. Скрипач(185 знак., 13.04.2019 11:19 - 11:24)
- Не увидел ничего интересного в этой статье. А пример автоматов с goto вообще жесть, массив функций имеет существенное преимущество - есть переменная "состояние", ее можно в интерфейсе посмотреть, ей можно присвоить тип енум и сразу понятен смысл. VLLV(282 знак., 13.04.2019 08:03)
- Ткните пальцем в лишнюю сущность. ЛИШНЮЮ, которую выбросить, а не возможность добавить еще одну/две (массив функций, например). - Скрипач(12.04.2019 16:45)
- Прослоечка в виде интерпретатора не лишняя сущность, а встроенное средство языка - массив указателей - лишняя? нууу, осталось только #define TRUE FALSE - VLLV(12.04.2019 16:57)
- Передергиваете. Зачем? Скрипач(253 знак., 12.04.2019 17:03 - 17:08)
- :) - Молодой коллега(12.04.2019 19:11, youtube)
- goto != jmp, фоновые переходы - ну кто их считает? - VLLV(12.04.2019 18:32)
- Передергиваете. Зачем? Скрипач(253 знак., 12.04.2019 17:03 - 17:08)
- Прослоечка в виде интерпретатора не лишняя сущность, а встроенное средство языка - массив указателей - лишняя? нууу, осталось только #define TRUE FALSE - VLLV(12.04.2019 16:57)
- А как же "не любой ценой"? :-) - SciFi(12.04.2019 15:59, ссылка)
- Ин-тер-при-та-тор. Потому что перезагрузка пользовательского кода не должна подразумевать перезагрузки системного. Неправильно это. - Скрипач(12.04.2019 15:50)
- Вот-вот. Физлица правят, а потом фобос в грунт. - SciFi(12.04.2019 15:42)
- "в инструкции пользователя ввести следующую фразу: доступ разрешается только аттестованному персоналу" - NAUT(12.04.2019 15:44)
- Первое же "почему текст?" - потому что нужно обязательно предусматривать диагностику ошибок. И выдавать ее в понятной форме. - Скрипач(12.04.2019 15:48)
- ну, нет, мне проще из виндосформы тогда уж правильный текст сразу генерить по кликам мышки, чем проверять этот текст на всякоразно - NAUT(12.04.2019 16:18)
- я как то делал "транслятор" перед запуском его запускал сишный препроцессор. Препроцессор делал файл который я скармливал рукописному транслятору. транслятор генерил бинарник который клался во флэш. abivan(652 знак., 12.04.2019 17:37 - 17:42)
- И что будете делать если загрузится "какая-то лажа"? Жизнь, она такая, shit - happends. - Скрипач(12.04.2019 16:48)
- ну, нет, мне проще из виндосформы тогда уж правильный текст сразу генерить по кликам мышки, чем проверять этот текст на всякоразно - NAUT(12.04.2019 16:18)
- Первое же "почему текст?" - потому что нужно обязательно предусматривать диагностику ошибок. И выдавать ее в понятной форме. - Скрипач(12.04.2019 15:48)
- "в инструкции пользователя ввести следующую фразу: доступ разрешается только аттестованному персоналу" - NAUT(12.04.2019 15:44)
- видимо я что-то упускаю из вида, а примером не поделитесь хоть издали? не понимаю как Вы предлагаете проверять на непротиворечивость данных допустим, это же адская бизнес-логика какая-то должна быть с кучей правил - NAUT(12.04.2019 20:40)
- В любом случае, то что наваяют "часные лица" я бы хранил в виде сугубо текстовых констант, которые скармливал бы интерпретатору. - Скрипач(12.04.2019 15:39)