Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пт апр 19, 2024 11:55

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 148 ]  На страницу Пред.  1, 2, 3, 4, 5, 6 ... 10  След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 00:51 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Цитата:
Это даже не ошибка, а просчет. Нельзя использовать неотображаемый символ для отмечания чего бы то ни было!
А выбора нет, Олег. только так, всё остальное может понадобиться внутри строки. Кроме того, давненько я не пользовался make - файлами, но если память мне не изменяет, там табулятор используется именно в этом смысле. Да - и почему он неотображаемый? В некоторых редакторах очень даже отображаемый (иначе как я его в строку смог ?)

КОд запустился?

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 00:58 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
вопрос писал(а):
Цитата:Это даже не ошибка, а просчет. Нельзя использовать неотображаемый символ для отмечания чего бы то ни было!А выбора нет, Олег. только так, всё остальное может понадобиться внутри строки. Кроме того, давненько я не пользовался make - файлами, но если память мне не изменяет, там табулятор используется именно в этом смысле. Да - и почему он неотображаемый? В некоторых редакторах очень даже отображаемый (иначе как я его в строку смог ?)
КОд запустился?

У меня редактор автоматом заменяет табуляции на пробелы... причем мне это нравится, потому что курсор по строке никогда не скачет.
Табуляции где-то может и отображаются, но в исходниках делать такие вещи очень черевато.
Лучше отделять пробелом - чем плохо-то?

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 01:09 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Цитата:
Табуляции где-то может и отображаются, но в исходниках делать такие вещи очень черевато.
Лучше отделять пробелом - чем плохо-то?

Ага, я, видимо, плохо пояснил - дело в том. что одному опреатору С++ может соответствовать 3-4 слова форта
( если пример запустится, нужно набрать слово init_check в консоли и посмотреть на это) т.е. одному оператору из строки-исходника соответствует 3-4 результирующих. Чем их отделять в строке-образце?
пробелы отделяют группы операторов (которые производят одно действие)
табуляторы отделяют слова внутри группы.

init_check должен показать следующее
Код:
*   *
/   /
%   MOD
+   +
-   -
>>   RSHIFT
<<   LSHIFT
<   <
<=   >   NOT
>   >
>=   <   NOT
==   =
!=   <>
&   AND
^   XOR
|   OR
&&   AND
||   OR
=   SWAP   !
*=   OVER   @   *   SWAP   !
/=   OVER   @   SWAP   /   SWAP   !
%=   OVER   @   SWAP   MOD   SWAP   !
+=   OVER   @   +   SWAP   !
-=   OVER   @   SWAP   -   SWAP   !
<<=   OVER   @   SWAP   LSHIFT   SWAP   !
>>=   OVER   @   SWAP   RSHIFT   SWAP   !
&=   OVER   @   AND   SWAP   !
^=   OVER   @   XOR   SWAP   !
|=   OVER   @   OR   SWAP   !

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 01:21 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
боюсь, придется зарываться в код, потому как задача была значительно проще сформулирована :)
но это уже не сегодня.

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 01:42 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Зато теперь есть код, который при некоторой доработке позволит читать любую строку символов с любым набором операторов: хоть сишным, хоть коболовским хоть фортрановским и тут же переводить эту строку в форто-читаемый вид, только, конечно, может случиться. что вид этот будет не сильно читаемым человеком, но это другой вопрос

для этого будет достаточно аккуратно создать 2 строчки
1. операторы. которые читаем
2. операторы, в которые преобразуем


Да, это неудобно, что некоторым операторам из строки 1 будет соответствовать целая групппа операторов из строки 2, но дословного перевода с языка на язык добиться всё равно нельзя.

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 15:02 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
Моя реализация компактнее

http://fforum.winglion.ru/viewtopic.php ... c&start=30

К тому-же SCAN стандартное слово http://pfe.sourceforge.net/wordsets/wor ... lbelt.html
NOTFOUND - дополнительная фича


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 17:19 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Mihail писал(а):
Моя реализация компактнее

http://fforum.winglion.ru/viewtopic.php ... c&start=30

К тому-же SCAN стандартное слово http://pfe.sourceforge.net/wordsets/wor ... lbelt.html
NOTFOUND - дополнительная фича

Мне кажется, эти коды делают разную работу. Или потенциально разную.
В указанном коде отсутствует возможность задать строку с пробелами (у меня наоборот), отсутствуют проверки на правильность. И я не совсем понял, как менять набор операторов (?) В моём коде, соблюдая пробел, можно задавать любой набор операторов , и работает с закавыченой строкой без NOTFOUND
SCAN стало бы возможно, пропускать табуляторы ... :) если бы я захотел их в строке образцов


но да, код "уже" в 3 раза.

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 18:50 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
вопрос писал(а):
В указанном коде отсутствует возможность задать строку с пробелами

Без пробелов для NOTFOUND , который пользуется командой _INF_ а она уже может
воспринимать стандартные разделители. В NOTFOUND формируется строка для исполнения в
буфере _INF_BUFF, содержимое которого, подается на вход EVALUATE.
Код:
4+FIVE*(TTT+8) TYPE

CR _INF_BUFF COUNT TYPE

_INF_ воспринимает пробел и ниже как разделитель
Код:
_INF_ { 4 +   FIVE
* (TTT+8) }  TYPE

вопрос писал(а):
отсутствуют проверки на правильность


Что за правильность?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 19:44 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
мой код построен так, что его можно было бы расширить разного рода проверками - если строка не соответствует тому или иному синтаксису или выходит за рамки набора знаков.
Таковые и присутствуют - можно попробовать набрать две разные скобки подряд или подряд два оператора или что-то ещё - дать, скажем, несбалансированную строку образцов ...
Всё-таки нужно прочитывать "преамбулу" ! 8)

_INF_ - хорошо

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 19:53 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
например
Код:
S"  first * 2 - 4 * second + ( a | b ) " >postfix TYPE
first 2 *  4 second *  a b OR   +   -    Ok
тут всё нормально

сделаем ошибки
Код:
S"  first * 2 - 4 * second + ( | a | b ) " >postfix TYPE
IMPROPER COMBINATION OF OPERATORS (4)  IMPROPER COMBINATION OF OPERATORS AND BRACKETS (5) any KEY

кто-то в скобки кодил, приговаривая вместо "а или б" - "или а или б"
результат - обнаружение ошибки (выйдет в ОС по BYE)

пропуск оператора в том же выражении в скобках
Код:
S"  first * 2 - 4 * second + ( a  b ) " >postfix TYPE
EXCEPTION!  CODE:C0000005  ADDRESS:58A3C9  WORD:oper_stack>
вызовет прерывание, хотя следовало бы отловить как ошибку ...

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 20:14 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
Mihail писал(а):
Моя реализация компактнее
http://fforum.winglion.ru/viewtopic.php ... c&start=30

прошу выложить в виде исходного текста (согласно правилам).

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 20:26 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
mOleg
код с файлового сервера запустился?

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 20:32 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
вопрос писал(а):
mOleg
код с файлового сервера запустился?

да, но работает до первого F2 (сохранения) в редакторе ...

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 20:39 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Цитата:
да, но работает до первого F2 (сохранения) в редакторе ...
я что-то не пойму - почему сохранение и почему по Ф2 ? что за редактор? пробелы не меняет?

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 09, 2009 20:45 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
вопрос писал(а):
Цитата:да, но работает до первого F2 (сохранения) в редакторе ...я что-то не пойму - почему сохранение и почему по Ф2 ? что за редактор? пробелы не меняет?

Редактор автоматом заменяет табуляции на пробелы (я использую NDN).
Желательно, чтобы в теме осталась рабочаяя версия в явном виде(а не в виде ссылок), причем в единственном экземпляре.
Да, организационные вопросы я из темы вычищу (чтобы небыло неожиданностью)
Просьба всем соблюдать правила данного раздела!

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 148 ]  На страницу Пред.  1, 2, 3, 4, 5, 6 ... 10  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB