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

...
Google Search
Forth-FAQ Spy Grafic

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




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

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

а нам этого знать не надо :)
надо только интерфейс знать

фортер не может успокоиться, пока не узнает всё (тут кто-то рекомендовал мне поизучать исходники, кто это был) :) :lol: :)

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


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

Зарегистрирован: Пт май 05, 2006 06:19
Сообщения: 192
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
вопрос писал(а):
...как проверить, если строка "ложится" в память, заполненную нулями, т.е. 0 там в любом случае в конце есть, потому возникает вариант 1а и 1б
[/list]

не вазникает ни каких вариантов ... поскольку строка может лечь как в пустую область так и притирку к следующей комуто выделенной, вероятность канечно в порядки разная, но не принебригаемо малая,
кстате да, нолик на всякий случай, в конце строки имеет смысл внести в обязательность, ибо "копейки затрат", зато пользы немеряно от совместимости с самой распространенной операционной системой :)

_________________
SPF


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

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
mrack писал(а):
вопрос писал(а):
...как проверить, если строка "ложится" в память, заполненную нулями, т.е. 0 там в любом случае в конце есть, потому возникает вариант 1а и 1б
[/list]

не вазникает ни каких вариантов ... поскольку строка может лечь как в пустую область так и притирку к следующей комуто выделенной, вероятность канечно в порядки разная, но не принебригаемо малая,
кстате да, нолик на всякий случай, в конце строки имеет смысл внести в обязательность, ибо "копейки затрат", зато пользы немеряно от совместимости с самой распространенной операционной системой :)

У меня варианты возникли ...
а насчёт копеек затрат, то да, точно так же копеечные затраты на ещё одно поле - оно ведь ВСЕГДА пустое - его и трогать не нужно, кроме случая, если кто-то пожелает отступить от стандарта, тогда, будь добр, дай знать - заполни ячейку ... и всё

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


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

Зарегистрирован: Вт мар 20, 2007 23:39
Сообщения: 1261
Благодарил (а): 3 раз.
Поблагодарили: 19 раз.
Вот лично я по собственному опыту работы со строками считаю, что необходимы и достаточны только:
пара видов слов для создания строк
S" ххх" - a u строка(после последнего символа ноль)
" ххх" - az-строка
т.н. "бэкслеш-выражения" вида:
\xAB \n \crlf и пр.;
и несколько простейших операций со строками:
/STR ( a u n -- a u-n ) - укоротить строку
S+ ( a1 u2 a2 u2 -- a3 u3 ) - сложить строки с выделением памяти
SEARCH - ну это уже обычный поиск
А дополнительные слова типа поиск и замена, подстроки и прочее - как расширение в дополнительной библиотеке. Те же поиск и замена легко пишутся через SEARCH. Все! Больше совершенно ничего не нужно. А если надо работать с юникод-строками:
либо отдельно слова для работы с юникод-строками;
либо один вид строк - или юникод, или обычные;
или вводим контроль типов строк - в позиции -1 от адреса первого символа указываем тип строки-кодировку и радуемся жизни.
IMHO: всякие счетчики переменной длины, указатили и прочие дополнительные поля - полная и безполезная ерунда.

_________________
Cтоимость сопровождения программного обеспечения пропорциональна квадрату творческих способностей программиста.
Роберт Д. Блисc


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

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

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


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

Зарегистрирован: Сб май 06, 2006 12:01
Сообщения: 959
Откуда: Украина, Харьков
Благодарил (а): 2 раз.
Поблагодарили: 7 раз.
А никто не хочет сделать строки таким же элементом, как числа? ;)
Т.е. чтоб строки задавались в виде "Это строка" без всяких пробелов? ;) И обрабатывались на уровне интерпретатора/компилятора.

Описание реализации строк нужно только для реализации эффективных алгоритмов работы с ними и если есть функционально полный набор - можно работать одинаково (на высоком уровне) с любой реализацией.

Вот только для разных задач полный набор слов может быть разный... :(
И работать разные реализации будут с разной скоростью... :(

В принципе есть предлагавшееся решение из простых - внутри системы (для ПК) хранить все строки с 32-битовым счетчиком (память не экономить, вернее - экономить на программах обработки, а не на строках ;) ), а при обращении к ОС - копировать нужные строки в буфер или в кучу и давать ссылку туда. При соотношении скорости работы процессоров и вызовов ОС может получиться приемлемо! :)

Хотя по-правильному надо бы проанализировать все разные задачи, в которых используются строки. М. будут решения и получше... ;)

_________________
With best wishes, in4.


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

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
in4 писал(а):
если есть функционально полный набор - можно работать одинаково (на высоком уровне) с любой реализацией.

Вот его-то (функционально полный набор) и надо в стандарт вписать. А скорость работы - это параметр реализации, ограничивать который (методом забивания старых ржавых гвоздей в стандарт) в современной ситуации с быстро-развивающейся компьютерной индустрией - смысла нет. Оно и раньше небыло, но набили гвоздей, вот оно и волочится позади, цепляясь за каждую кочку и царапаясь при попытке приподнять и пронести вперед на руках.

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


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

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

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


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

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

с форком совсем другая ситуация - это полигон для опробования различных мыслей и идей.
Со стандартом я уже попрощался и даже помахал ему ручкой, потому что достаточно много моментов, которые просто не стоит поддерживать.

К тому же даже в форке не возникает проблем, если вы работаете со строками с помощью стандартных COUNT TYPE s" SLITERAL и пр.

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


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

Зарегистрирован: Пт май 05, 2006 06:19
Сообщения: 192
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
может если дать определение понятию "строка" половина теорий автоматически самокалапсируются ?
или например обсудить недостатки на примере конкретной библиотеки "devel\~ac\lib\str5.f " ?
так дискус размазыватся будет меньше, наверное

_________________
SPF


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт янв 08, 2009 23:54 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
Цитата:
строка - это последовательность символов.

Что-нибудь изменилось?

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


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

Зарегистрирован: Пт май 05, 2006 06:19
Сообщения: 192
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
да вот таки казалось бы так просто ан нет ... символ это что ? - байт? ворд? переменой длины?
допустимые размеры строки ?
а длина строки это количество байт или символов ?
и прочие технические ограничения

_________________
SPF


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

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
и почему все эти вопросы не самокаллапсировались?

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


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

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

Потому. что могут быть разные форматы строк ( WingLion ещё столкнётся)

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


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

Зарегистрирован: Вс май 07, 2006 11:38
Сообщения: 279
Откуда: Slavyansk, Ukraine
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
in4 писал(а):
А никто не хочет сделать строки таким же элементом, как числа? ;)
Т.е. чтоб строки задавались в виде "Это строка" без всяких пробелов? ;) И обрабатывались на уровне интерпретатора/компилятора.

Хм... В конце концов мы имеем только "программы" и "данные". "Данные" в свою очередь - это либо "числа", либо "строки". Тогда почему бы сразу жестко не зарезервировать всего несколько форматов для разных типов представления числа (бинарное, целое..), а все остальное автоматом засчитывать как строки? При этом количество различных форматов строк вообще не ограничивать, а воспринимать это их разнообразие по аналогии с множеством типов кодировок символов. (Как - не знаю...) Скажем, к примеру, через некое "поле кодировки": кодировка №001 - строка со счетчиком, кодировка №002 - ...

(Сорри за сумбур)

_________________
Банзай!


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

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


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

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


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

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