Автор | Сообщение |
|
| |
Сообщение: 1
Зарегистрирован: 14.03.09
|
|
Отправлено: 14.03.09 01:08. Заголовок: исходники и новая версия URQ-интерпретатора. Стандарт парсера
Представляю тестовую версию программы URQ-интерпретатора с исходным кодом на языке Pascal. Оформление отображения текста пока не проводилось, основная задача - проектирование парсера для стандартизации и единообразия представления алгоритма разбор команд языка URQL. Практически все, если не все, программы URQL построены по принципу вычленения подстрок, когда считанная строка делится по позиции вхождения какого-либо слова, а эти половинки обрабатываются по отдельности... Здесь-же предлагаю алгоритм, работающий по принципиально-другому способу - разбору как у стандартных языков программирования. что реализовано в данной (0.0.1) версии: поддержка всех арифметических и логических операций, операторы: if ... then ... [else не поддерживается] p, pln, btn - строки текста с подстановками #выражение$ #%текстовая_переменная$ ##выражение$ instr - единственный способ создания текстовых переменных (длины хранимой строки пока ограничена 63 символами) с подстановками #выражение$ #%текстовая_переменная$ ##выражение$ goto, proc, common, inv, rnd, cls, input, invkill, perkill, save, pause, end. Характеристики: * работа с файлами неограниченной длины * при переходе по метке файл перечитывается заново * таблица переменных (переменные/инвентарь/метоки/строки) длиной 750 элементов. (строковые типы занимают по два элемента). * история возврата из подпрограмм на 1025 позиций. * анализатор ошибки отображает: необходимый оператор для данной конструкции, указание строки, позиции в строке где обнаружена. * запуск с командной строки (help - выводится при запуске без параметров) * пока интерпретатором обрабатываются файлы только в dos-кодировке (ASCII). Режимы работы: 0 - запуск квеста 1 - запуск из сохранения (не тестировался) 2 - сканирование квеста на наличие ошибок 3 - сканирование квеста на наличие ошибок и проверка наличия всех переходов по меткам (долго обрабатывает...) не знаю как здесь выложить файл... а так смотрите сюда: http://forum.ifiction.ru/viewtopic.php?pid=14929#p14929
|
|
Профиль
Цитата
Ответить
|
Ответов - 117
, стр:
1
2
3
4
5
6
All
[только новые]
|
|
|
| постоянный участник
|
Сообщение: 396
Зарегистрирован: 17.03.08
|
|
Отправлено: 14.07.09 16:20. Заголовок: Nolite, в 'класс..
Nolite, в 'классической' досурке pause 0 означает ждать бесконечно долго
|
|
Профиль
Цитата
Ответить
|
|
| постоянный участник
|
Сообщение: 8
Зарегистрирован: 26.04.09
|
|
Отправлено: 14.07.09 16:55. Заголовок: Спасибо, уже исправи..
Спасибо, уже исправил.
|
|
Профиль
Цитата
Ответить
|
|
| постоянный участник
|
Сообщение: 195
Зарегистрирован: 20.01.06
|
|
Отправлено: 15.07.09 22:19. Заголовок: местами текст програ..
местами текст программы как бы не очень понятен цитата: | p s#i+1$[&pause -1 instr sys=s#i$ instr str=#%system$ len=strlen #%str$& ;посчитаем кол-во входящих слов c=0&j=1 :r2 if strchar j,#%str$&=46 then c=c+1 j=j+1&if j<=len then goto r2 ;END - посчитаем кол-во входящих слов p #len$]=#c$ >>> &pause -1 |
| ЗЫ для тех кто не в курсе темы: к стандарту URQL, равно как и к парсеру ЭТА тема отношения не имеет
|
|
Профиль
Цитата
Ответить
|
|
| |
Сообщение: 44
Зарегистрирован: 14.03.09
|
|
Отправлено: 16.07.09 13:56. Заголовок: qwerty ты ошибаешьс..
qwerty ты ошибаешься, впрочем как (чуть не сказал всегда), в приличной доле ответов в этой теме. все очень даже понятно: для строк существует только два символа завершения либо "&", либо конец строки. для выделения строк я не стал делать как другие авторы: "что-то ... в кавычках", тогда символ кавычка автоматически исключился бы из списка разрешенных, т.е. они бы порождали неоднозначность, яркий пример квест "буратино" - попробуйте запустить его на dos_urq или fire_urq. про интерпретатор скажу так: 1. Имеющиеся возможности позволяют сгенерировать/адаптировать любую urq-структуру. 2. Быстрое сканирование/отладка 3. До 70% известных мне квестов уже сканированы/адаптированы к AURQ009
|
|
Профиль
Цитата
Ответить
|
|
| постоянный участник
|
Сообщение: 196
Зарегистрирован: 20.01.06
|
|
Отправлено: 16.07.09 14:28. Заголовок: qwerty пишет: места..
qwerty пишет: цитата: | местами текст программы как бы не очень понятен |
| abcdef, цитата: | qwerty ты ошибаешься, ................................. все очень даже понятно: ...................... |
| имелось ввиду, что Я непонимаю, как именно должен обрабатываться твоим интерпретатором приведённый отрывок например, мне неизвестно назначение [] и >>> впрочем, можешь не отвечать- наверняка эта инфа кде-нибудь описана(ведь так?) и мне просто в лом было изучать очередной язык
|
|
Профиль
Цитата
Ответить
|
|
| постоянный участник
|
Сообщение: 297
Зарегистрирован: 20.12.05
|
|
Отправлено: 16.07.09 14:42. Заголовок: qwerty, там оператор..
qwerty, там оператор вывода на экран, какое еще назначение?
|
|
Профиль
Цитата
Ответить
|
|
| |
Сообщение: 45
Зарегистрирован: 14.03.09
|
|
Отправлено: 16.07.09 15:15. Заголовок: в архиве с версией a..
в архиве с версией aurq0092 дока. некоторые моменты возможно упустил, например 'pause' и отрицательное число. если есть вопросы по работе операторов я все расскажу (отвечать мне, правда, удобнее на том форуме). В существующую версию (0092) могу попробовать добавить конструкцию #...$ в любом месте, но не буду т.к. не хочу чтобы aurq превратился в непонятно что... а так у меня планы (если будет очень скучно) превратить aurq в компилятор, тогда оператор 'system' будет эквивалентен получению адреса в памяти
|
|
Профиль
Цитата
Ответить
|
|
| постоянный участник
|
Сообщение: 197
Зарегистрирован: 20.01.06
|
|
Отправлено: 16.07.09 15:24. Заголовок: Хломидоманад, abcdef..
Хломидоманад, abcdef, всё, разобрался! тогда по ошибке запустил не ту версию- в ней прога не работала- вот и пытался разобраться
|
|
Профиль
Цитата
Ответить
|
|
| |
Сообщение: 49
Зарегистрирован: 14.03.09
|
|
Отправлено: 23.07.09 20:06. Заголовок: выложил aurq0093. au..
выложил aurq0093. aurq 3D-лабиринт (в архиве)
|
|
Профиль
Цитата
Ответить
|
|
| |
Сообщение: 201
Зарегистрирован: 03.07.07
|
|
Отправлено: 23.07.09 22:29. Заголовок: abcdef куда выложил-..
abcdef куда выложил-то? ссылку?
|
|
Профиль
Цитата
Ответить
|
|
| |
Сообщение: 50
Зарегистрирован: 14.03.09
|
|
Отправлено: 24.07.09 07:11. Заголовок: все версии и програм..
|
|
Профиль
Цитата
Ответить
|
|
|
| |
Сообщение: 202
Зарегистрирован: 03.07.07
|
|
Отправлено: 24.07.09 16:42. Заголовок: ясно. я на ификшене ..
ясно. я на ификшене забанен, жаль, хотел взглянуть на 3D лабиринт.
|
|
Профиль
Цитата
Ответить
|
|
| |
Сообщение: 51
Зарегистрирован: 14.03.09
|
|
Отправлено: 25.07.09 10:21. Заголовок: спроси у тех кто ска..
спроси у тех кто скачал, а смотреть не чего, в графике лучше было б и быстрее.
|
|
Профиль
Цитата
Ответить
|
|
| |
Сообщение: 203
Зарегистрирован: 03.07.07
|
|
Отправлено: 25.07.09 15:11. Заголовок: abcdef я у тебя спро..
abcdef я у тебя спрошу. отправь мне на nex@otaku.ru, если не трудно. если "смотреть нечего", то зачем выкладывать?
|
|
Профиль
Цитата
Ответить
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 25.07.09 15:24. Заголовок: Nex за что тебя заба..
Nex за что тебя забанили?
|
|
Цитата
Ответить
|
|
| |
Сообщение: 204
Зарегистрирован: 03.07.07
|
|
Отправлено: 25.07.09 18:59. Заголовок: За то, что не соглас..
За то, что не согласился с Олегусом. А ещё я сказал ему "Пф" Да переживать там нечего, бан ненадолго.
|
|
Профиль
Цитата
Ответить
|
|
| |
Сообщение: 52
Зарегистрирован: 14.03.09
|
|
Отправлено: 26.07.09 08:32. Заголовок: готовится эксперимен..
готовится экспериментальная сетевая версию aurq. предача/прием текстовой строки. работа в потоке интерпретатора, поэтому приостанавливает до выполнения транзакции. после выполнения доступны через переменные: строка данных; строка контрольной суммы квеста и его имя; строка лога обмена и ошибок. #не требуется создание своего игрового сервера. #объем транзакции 2-4 kb + пользовательские данные. #скорость передачи/получения от 30 сек #прием извлекает и удаляет одно первое сообщение #требования: разрешение протоколов esmtp/pop3; наличие зарегистрированного пустого email ящика на каждого игрока ___ тестируется с сервером mail.ru каково мнение пользователей?
|
|
Профиль
Цитата
Ответить
|
|
| |
Сообщение: 205
Зарегистрирован: 03.07.07
|
|
Отправлено: 26.07.09 10:45. Заголовок: на движок без игр по..
на движок без игр пользователям пофиг.
|
|
Профиль
Цитата
Ответить
|
|
| |
Сообщение: 53
Зарегистрирован: 14.03.09
|
|
Отправлено: 26.07.09 15:10. Заголовок: не идет квест - адап..
не идет квест - адаптируй. и все-таки что скажут более опытные квесто-писатели и авторы других платформ? т.к. имеются два существенных минуса: 1. потенциально-опасный код - начиная от парольных переборщиков и рассылки спама, до неблагонадежных скриптов ворующих пароли пользователей. 2. отсутствие мобильности программ требованием доступа в интернет, которого, например как у меня, мало. ___ что планируется добавить: передача из строки почты esmtp, получение в строку почты pop3, получение http файла в строку через методы get и post
|
|
Профиль
Цитата
Ответить
|
|
| постоянный участник
|
Сообщение: 306
Зарегистрирован: 20.12.05
|
|
Отправлено: 26.07.09 16:20. Заголовок: Пока не очень понял,..
Пока не очень понял, что выигрывают от этой возможности игрописатели. ps Лабиринт тормозит, а в досурке вообще не запускается. Но ты и так знаешь. pps Мне лично все же кажется, что аурке нужен GUI. Уж очень велик нынче контингент потенциальных пользователей, которых консоль может просто отпугнуть... 2009 год все-таки.
|
|
Профиль
Цитата
Ответить
|
Ответов - 117
, стр:
1
2
3
4
5
6
All
[только новые]
|
|