Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт мар 28, 2024 22:20

...
Google Search
Forth-FAQ Spy Grafic

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




Ответить
Имя пользователя:
Заголовок:
Текст сообщения:
Введите текст вашего сообщения. Длина сообщения в символах не более: 60000

Размер шрифта:
Цвет шрифта
Настройки:
BBCode ВКЛЮЧЕН
[img] ВЫКЛЮЧЕН
[flash] ВЫКЛЮЧЕН
[url] ВКЛЮЧЕН
Смайлики ВЫКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Не преобразовывать адреса URL в ссылки
Вопрос
Теперь гостю придется вводить здесь пароль. Не от своей учетной записи, а ПАРОЛЬ ДЛЯ ГОСТЯ, получить который можно после регистрации на форуме через ЛС.:
Этот вопрос предназначен для выявления и предотвращения автоматических регистраций.
   

Обзор темы - правило Миллера 7+-2
Автор Сообщение
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
Цитата:
Он так может и явные опечатки разбить на слова.

Может, но скорее всего словим исключение.
Я как-то не позиционирую этот обработчик как лекарство от вех болезней.
У всех наработок есть свой предел, в данном случае это возможность побочных эффектов.
Сообщение Добавлено: Вс окт 30, 2016 14:22
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
Victor__v писал(а):
Видишь ICELLS+@ и понимаешь что это сразу.


: -TH CELLS + ;

X[] I -TH @

Вполне можно определить нужные сочетания. Делать обработчик, пытающийся разбить непонятные слова на связки, чревато побочными эффектами. Он так может и явные опечатки разбить на слова.
Сообщение Добавлено: Сб окт 29, 2016 23:52
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
Эм, это просто обработчик для notfound
Т.е определитель и интерпретатор непонятного.
Насчёт "надо", скорее просто можно, пробелы как никак занимают место :)
Небольшое удобство, для меня по крайней мере.
Видишь ICELLS+@ и понимаешь что это сразу.
А обязательность? и без этого обработчика всё замечательно.
Кучу пространства можно сэкономить на организации "тех самых" нужных слов
Типа [HEX] [DECIMAL] @@ @! и т.д. ведь сразу же понятно, что они делают
Сообщение Добавлено: Сб окт 29, 2016 22:49
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
Victor__v писал(а):
я как-то и не навязываю. Понять можно? Можно. Это обязательно? Нет.


Так ведь если это разновидность языка поверх Форта, то она становится в какой-то степени обязательной. На ней ведь надо будет писать.
Сообщение Добавлено: Сб окт 29, 2016 19:15
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
Согласен.
Цитата:
однозначно понимаемым множеством программистов

я как-то и не навязываю. Понять можно? Можно. Это обязательно? Нет.
Сообщение Добавлено: Пт окт 28, 2016 19:20
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
Victor__v писал(а):
Их может быть много. Это жизнь.
Можно сделать так, чтобы было совершенно идеально. Но сколько времени на это уйдёт?
Лучше по мере готовности.

Подобные парсеры находятся далеко за пределами исходного Форта. Фактически это другой язык, разрабатываемый на Форте и в его рамках. Оно может казаться перспективным или расширяющим возможности, однако грамматика уже более сложная и допускает неоднозначные моменты (отсюда и потенциальные проблемы). Главное здесь то, что язык, сделанный "по месту", не является однозначно понимаемым множеством программистов (при этом Форт с единственным ограничением "слова разделяются пробелами" в гораздо большей степени способствует такому единообразному пониманию).
Сообщение Добавлено: Пт окт 28, 2016 15:50
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
Цитата:
А сколько потенциально проблемных ситуаций, когда что-то недотестировано, а что-то сработало совершенно неожиданно?

Их может быть много. Это жизнь.
Можно сделать так, чтобы было совершенно идеально. Но сколько времени на это уйдёт?
Лучше по мере готовности.
Да к тому же актуального кода парсера сцеп.кода под рукой у меня сейчас нет :D
А так, всё доводится до ума, потихоньку.
Цитата:
если такие обработчики постоянно "делаются получше"

Не постоянно, в основном сделаны, потом чуть-чуть подправлены и в бой :)
Я ж не просто так это пишу, в коде задействовано.
Сообщение Добавлено: Чт окт 27, 2016 19:45
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
Victor__v писал(а):
Сейчас данный код немножко не актуален, сделал по лучше уже.

Откуда и вопрос - если такие обработчики постоянно "делаются получше", может быть, подождать, пока станет совсем хорошо? И сколько промежуточных вариантов еще будет? А сколько потенциально проблемных ситуаций, когда что-то недотестировано, а что-то сработало совершенно неожиданно?
Сообщение Добавлено: Вт окт 25, 2016 20:45
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
Цитата:
Victor__v писал(а):
Как может понять программа, думаю, понятно

Нет, непонятно.



Ну, так...
Код:
: ?P?A?R?S?E?R? ( addr u -- -1 ) \ обработчик для notfound
   R:STR 300 " {s} " R:COUNT
   
   {{ 2 2 }} \ локальные переменные на стеке возвратов
   0 R-LIST-N ! \ псевдо-стек
     R-LIST-N CELL+ LOR: 2 !
   BEGIN
   LOR: 3 0!  \ лок.переменная

   LOR: 1 @
   0 DO
     LOR: 2 @ I  SFIND

     IF                                        \ Здесь и ниже код дублируется, дабы находилась наибольшее
     DROP                                   \ возможное слово
     LOR: 0 @ I +  C@  >R-ST        \
     LOR: 2 @ I 1+   SFIND
       IF DROP
               
          I 2+ LOR: 2 +!
          I 1+ LOR: 0 +!
          LOR: 1 @ I 1+ - ABS LOR: 1 !
          BL >R-ST
         -1 LOR: 3 ! LEAVE
          ELSE 2DROP
               R-ST-DROP
          THEN

     BL >R-ST
     I 1+ LOR: 2 +!
     I LOR: 0 +!
     LOR: 1 @ I - ABS LOR: 1 ! 
 
     -1 LOR: 3 ! LEAVE
     ELSE 2DROP
     THEN

     LOR: 0 @ I + C@ >R-ST
     LOOP

     LOR: 3 @ INVERT
     UNTIL
     R-LIST-N CELL+ R-LIST-N @

     EVALUATE
     -1


Сейчас данный код немножко не актуален, сделал по лучше уже.
Сообщение Добавлено: Пн окт 24, 2016 20:14
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
Victor__v писал(а):
Мозг автоматически "подгоняет" информацию под себя.
Мол, это строка ересь, а вот если бы... И вот этим "если бы" он и занимается. А потом и вовсе не заморачивается, мол есть лог.единица ну и ладно.

Ради чего нагружать мозг? Сложность - не самоцель и не показатель качества языка. Она должна появляться только при необходимости.
Victor__v писал(а):
Как может понять программа, думаю, понятно

Нет, непонятно.
Сообщение Добавлено: Вс окт 23, 2016 20:59
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
И насчёт понимания.
Пусть воспринимается наибольший NFA , а потом следующий
Сообщение Добавлено: Вс окт 23, 2016 16:37
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
Мозг автоматически "подгоняет" информацию под себя.
Мол, это строка ересь, а вот если бы... И вот этим "если бы" он и занимается. А потом и вовсе не заморачивается, мол есть лог.единица ну и ладно.
Как может понять программа, думаю, понятно
Сообщение Добавлено: Вс окт 23, 2016 16:34
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
И как это можно однозначно понять, если текст слит?
Сообщение Добавлено: Вс окт 23, 2016 01:15
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
R@ CELL+ R@ @
Сообщение Добавлено: Сб окт 22, 2016 09:45
  Заголовок сообщения:  Re: правило Миллера 7+-2  Ответить с цитатой
Victor__v писал(а):
R@CELL+R@@


А это R@ CELL+ R@ @ или R @ CELL +R @ @ ?
Сообщение Добавлено: Сб окт 22, 2016 01:51

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


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