Автор |
Сообщение |
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
f02732 писал(а): Я ошибся, я имел ввиду 4294967296 итераций. Вобщем аналог Код: 0 0 DO ( ... ) LOOP Изначально так и было сделано, т.е. сначала происходил декремент счетчика, а потом сравнение с 0, но со временем поменял, т.к. показалась более правильной такая логика: цикл Код: n [ ... ] выполняется n раз Из-за этого в каких-то местах кода удачно получается совместить цикл и проверку условия.
[quote="f02732"]Я ошибся, я имел ввиду 4294967296 итераций. Вобщем аналог [code]0 0 DO ( ... ) LOOP[/code][/quote]
Изначально так и было сделано, т.е. сначала происходил декремент счетчика, а потом сравнение с 0, но со временем поменял, т.к. показалась более правильной такая логика: цикл [code]n [ ... ][/code] выполняется n раз Из-за этого в каких-то местах кода удачно получается совместить цикл и проверку условия.
|
|
|
|
Добавлено: Пн июл 29, 2019 20:58 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
Я ошибся, я имел ввиду 4294967296 итераций. Вобщем аналог Код: 0 0 DO ( ... ) LOOP
Я ошибся, я имел ввиду 4294967296 итераций. Вобщем аналог [code]0 0 DO ( ... ) LOOP[/code]
|
|
|
|
Добавлено: Пн июл 29, 2019 19:43 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
f02732 писал(а): А если я хочу сделать 4294967295 итераций (на 32-битной машине)? Код: 0xFFFFFFFF [ ... ] , но можно и Код: -1 [ ... ] , т.к. отрицательные числа в данном случае трактуются как большие положительные.
[quote="f02732"]А если я хочу сделать 4294967295 итераций (на 32-битной машине)?[/quote] [code]0xFFFFFFFF [ ... ][/code], но можно и [code]-1 [ ... ][/code], т.к. отрицательные числа в данном случае трактуются как большие положительные.
|
|
|
|
Добавлено: Пн июл 29, 2019 19:23 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
Total Vacuum писал(а): 0 [ ... ] \ еще один комментарий [/code]но можно и традиционный DO-LOOP сделать А если я хочу сделать 4294967295 итераций (на 32-битной машине)?
[quote="Total Vacuum"] 0 [ ... ] \ еще один комментарий [/code]но можно и традиционный DO-LOOP сделать[/quote] А если я хочу сделать 4294967295 итераций (на 32-битной машине)?
|
|
|
|
Добавлено: Пн июл 29, 2019 18:01 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
Ethereal писал(а): Кстати, идея шикарная для малоресурсных микроконтроллеров чтобы не расходовать зазря под имена драгоценный флеш. Тут ведь можно и так: на ПК все это хранится в полном виде, при кросс-компиляции можно набрать статистику, сколько вообще слов существует, и выбрать хоть 3 символа, хоть 2, хоть 1. Это если надо интерпретатор в МК.
[quote="Ethereal"]Кстати, идея шикарная для малоресурсных микроконтроллеров чтобы не расходовать зазря под имена драгоценный флеш.[/quote] Тут ведь можно и так: на ПК все это хранится в полном виде, при кросс-компиляции можно набрать статистику, сколько вообще слов существует, и выбрать хоть 3 символа, хоть 2, хоть 1. Это если надо интерпретатор в МК.
|
|
|
|
Добавлено: Пн июл 22, 2019 23:22 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
Причем сразу столько вариантов видно, а Мур все равно выбрал вариант "хамоватое письмо редактору"...
Причем сразу столько вариантов видно, а Мур все равно выбрал вариант "хамоватое письмо редактору"...
|
|
|
|
Добавлено: Пн июл 22, 2019 21:53 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
Hishnik писал(а): согласиться с отмеченным недостатком в ухудшении читаемости? Тут нет недостатка с ухудшением читаемости. В исходнике можно было свободно использовать имена до 31 символа, но в словарь у Мура сохранялась лишь длина имени и первых три символа. По ним поиск в словаре и производился. Кстати, идея шикарная для малоресурсных микроконтроллеров чтобы не расходовать зазря под имена драгоценный флеш. И еще кстати в Фиг-Форте есть user-переменная WIDTH, по умолчанию равная 31 (что означает усечение выключено) в которой потолок (длину) усечения имен можно настраивать. Если весьма маловероятное совпадение таки произошло, что сразу будет видно при компиляции, то потолок можно приподнять. Правда, я эту переменную в Фиге под Win только один раз и использовал, поскольку обычно самыми длинными именами у меня оказывались имена Windows-API функций, а их нельзя усекать, полные имена нужны для импорта.
[quote="Hishnik"]согласиться с отмеченным недостатком в ухудшении читаемости?[/quote]Тут нет недостатка с ухудшением читаемости. В исходнике можно было свободно использовать имена до 31 символа, но в словарь у Мура сохранялась лишь длина имени и первых три символа. По ним поиск в словаре и производился. Кстати, идея шикарная для малоресурсных микроконтроллеров чтобы не расходовать зазря под имена драгоценный флеш. И еще кстати в Фиг-Форте есть user-переменная WIDTH, по умолчанию равная 31 (что означает усечение выключено) в которой потолок (длину) усечения имен можно настраивать. Если весьма маловероятное совпадение таки произошло, что сразу будет видно при компиляции, то потолок можно приподнять. Правда, я эту переменную в Фиге под Win только один раз и использовал, поскольку обычно самыми длинными именами у меня оказывались имена Windows-API функций, а их нельзя усекать, полные имена нужны для импорта.
|
|
|
|
Добавлено: Пн июл 22, 2019 20:55 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
Тоже не все пока понятно: DEAr EDItor I AM AFRaid THAt THE LETter IN THE LASt ISSue ABOut FORth INC-- USIng ONLy THRee LETter NAMe FIElds HAS HAD THE OPPosite EFFect FROm WHAt THE WRIter WANts. HIS LETter ( LIKe THIs ONE ) SHOws THAt SAVing ONLy THRee LETters AND COUnt IS JUSt ABOut OPTimal IN TERms OF A TRA-- OFF BET---- SAVing MEMory AND KEEping LEG----. WE STIll DONt SEE THE NEEd FOR 31 CHAracter NAMes IN THE GENeral CASe. Но это действительно шедевр.
Тоже не все пока понятно: :D DEAr EDItor I AM AFRaid THAt THE LETter IN THE LASt ISSue ABOut FORth INC-- USIng ONLy THRee LETter NAMe FIElds HAS HAD THE OPPosite EFFect FROm WHAt THE WRIter WANts. HIS LETter ( LIKe THIs ONE ) SHOws THAt SAVing ONLy THRee LETters AND COUnt IS JUSt ABOut OPTimal IN TERms OF A TRA-- OFF BET---- SAVing MEMory AND KEEping LEG----. WE STIll DONt SEE THE NEEd FOR 31 CHAracter NAMes IN THE GENeral CASe.
Но это действительно шедевр. :))
|
|
|
|
Добавлено: Пн июл 22, 2019 00:59 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
Ethereal писал(а): Нашел возможно это письмо, но там вообще про счетчик и три символа : Да, точно, вот это! Но я так скажу, если только у него там с редактором не было многолетнего общения и доверительных отношений, то такая штука - чистой воды хамство. Неужели нельзя было аргументы найти, указать на необходимость экономии памяти в определенных классах приложений, согласиться с отмеченным недостатком в ухудшении читаемости? Собственно, после заявленного 1 ГГц и достигнутых 600 МГц в SeaForth я убедился, что Мур - зарвавшийся радиолюбитель, которому повезло попасть во временное окно востребованности нескольких его разработок. А дальше пошли метания в стиле "чего бы еще эдакого учудить".
[quote="Ethereal"]Нашел возможно это письмо, но там вообще про счетчик и три символа :[/quote] Да, точно, вот это!
Но я так скажу, если только у него там с редактором не было многолетнего общения и доверительных отношений, то такая штука - чистой воды хамство. Неужели нельзя было аргументы найти, указать на необходимость экономии памяти в определенных классах приложений, согласиться с отмеченным недостатком в ухудшении читаемости?
Собственно, после заявленного 1 ГГц и достигнутых 600 МГц в SeaForth я убедился, что Мур - зарвавшийся радиолюбитель, которому повезло попасть во временное окно востребованности нескольких его разработок. А дальше пошли метания в стиле "чего бы еще эдакого учудить".
|
|
|
|
Добавлено: Пн июл 22, 2019 00:10 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
Нашел возможно это письмо, но там вообще про счетчик и три символа : “Letter to the Editor” of Forth Dimensions [Moore, 1983] concerning the practice of storing names of Forth words as a count and first three characters. DEA- EDI--- I AM AFR--- THA- THE LET--- IN THE LAS- ISS-- ABO-- FOR-- INC-- USI-- ONL- THR-- LET--- NAM- FIE--- HAS HAD THE OPP----- EFF--- FRO- WHA- THE WRI--- WAN--. HIS LET--- ( LIK- THI- ONE ) SHO-- THA- SAV--- ONL- THR-- LET---- AND COU-- IS JUS- ABO-- OPT---- IN TER-- OF A TRA-- OFF BET---- SAV--- MEM--- AND KEE---- LEG----. WE STI-- DON- SEE THE NEE- FOR 31 CHA------ NAM-- IN THE GEN---- CAS-. YOU-- TRU-- CHU-- MOO-- FOR-- INC- Не все понял, но конец там явно такой : WE STILL DONT SEE THE NEED FOR 31 CHARACTER NAMES IN THE GENERAL CASE.
Нашел возможно это письмо, но там вообще про счетчик и три символа :
“Letter to the Editor” of Forth Dimensions [Moore, 1983] concerning the practice of storing names of Forth words as a count and first three characters.
DEA- EDI--- I AM AFR--- THA- THE LET--- IN THE LAS- ISS-- ABO-- FOR-- INC-- USI-- ONL- THR-- LET--- NAM- FIE--- HAS HAD THE OPP----- EFF--- FRO- WHA- THE WRI--- WAN--. HIS LET--- ( LIK- THI- ONE ) SHO-- THA- SAV--- ONL- THR-- LET---- AND COU-- IS JUS- ABO-- OPT---- IN TER-- OF A TRA-- OFF BET---- SAV--- MEM--- AND KEE---- LEG----. WE STI-- DON- SEE THE NEE- FOR 31 CHA------ NAM-- IN THE GEN---- CAS-.
YOU-- TRU--
CHU-- MOO-- FOR-- INC-
Не все понял, но конец там явно такой : WE STILL DONT SEE THE NEED FOR 31 CHARACTER NAMES IN THE GENERAL CASE. :))
|
|
|
|
Добавлено: Вс июл 21, 2019 23:20 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
f02732 писал(а): Не знаю, может он хотел сделать язык ближе к естественным? Но вообще согласен, не самое удачное для них применение. Я что-то не могу найти письмо Мура по поводу пяти символов в идентификаторе. Было такое дело, ему из журнала написали про такой недостаток Форта. Он же, как широко известно, и Forth потому, что нельзя было ввести Fourth. Пять символов было чисто техническим и очень частным ограничением. К языку, тем более к грамматике как таковой, это абсолютно никакого отношения не имеет. Казалось бы, на формальное замечание можно так и ответить. Вместо этого Мур раскатал ответное письмо, в котором ВСЕ слова содержали не более 5 символов. Дескать, читается же (и с намеком "сам дурак"). Это что, и круглые скобки использованы для комментариев по принципу "а вот вам всем!"? Дескать, увидели люди круглые скобки, тут же спросили "эй, а как же выражения со скобками?". И тут-то им и "придется" учить постфикс. Детский сад...
[quote="f02732"]Не знаю, может он хотел сделать язык ближе к естественным? Но вообще согласен, не самое удачное для них применение.[/quote] Я что-то не могу найти письмо Мура по поводу пяти символов в идентификаторе. Было такое дело, ему из журнала написали про такой недостаток Форта. Он же, как широко известно, и Forth потому, что нельзя было ввести Fourth. Пять символов было чисто техническим и очень частным ограничением. К языку, тем более к грамматике как таковой, это абсолютно никакого отношения не имеет. Казалось бы, на формальное замечание можно так и ответить. Вместо этого Мур раскатал ответное письмо, в котором ВСЕ слова содержали не более 5 символов. Дескать, читается же (и с намеком "сам дурак"). Это что, и круглые скобки использованы для комментариев по принципу "а вот вам всем!"? Дескать, увидели люди круглые скобки, тут же спросили "эй, а как же выражения со скобками?". И тут-то им и "придется" учить постфикс. Детский сад...
|
|
|
|
Добавлено: Вс июл 21, 2019 00:17 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
Hishnik писал(а): круглые скобки выглядят ребячеством Не знаю, может он хотел сделать язык ближе к естественным? Но вообще согласен, не самое удачное для них применение. В SwiftForth, например, { } используют для многострочных комментариев, потому что с ( ) могут возникнуть проблемы с написанием многострочных пояснений и описаний, придется следить за тем, чтобы не использовать скобки, ну или, например, не получится быстро закоменнтировать большой кусок кода содержащий стековые нотации.
[quote="Hishnik"]круглые скобки выглядят ребячеством[/quote] Не знаю, может он хотел сделать язык ближе к естественным? Но вообще согласен, не самое удачное для них применение.
В SwiftForth, например, { } используют для многострочных комментариев, потому что с ( ) могут возникнуть проблемы с написанием многострочных пояснений и описаний, придется следить за тем, чтобы не использовать скобки, ну или, например, не получится быстро закоменнтировать большой кусок кода содержащий стековые нотации.
|
|
|
|
Добавлено: Сб июл 20, 2019 20:53 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
Под редакторы в любом случае не хочется подстраиваться. А вот круглые скобки выглядят ребячеством - это что, такая была у Мура реакция на вопросы о постфиксе?
Под редакторы в любом случае не хочется подстраиваться. А вот круглые скобки выглядят ребячеством - это что, такая была у Мура реакция на вопросы о постфиксе?
|
|
|
|
Добавлено: Сб июл 20, 2019 19:52 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
Встроенный в третий FAR редактор правильно подсвечивает как комментарии \ и ( ... ) Так-что редакторы под нас подстраиваются.
Встроенный в третий FAR редактор правильно подсвечивает как комментарии \ и ( ... ) Так-что редакторы под нас подстраиваются.
|
|
|
|
Добавлено: Сб июл 20, 2019 18:50 |
|
|
|
|
|
Заголовок сообщения: |
Re: Скобки разных видов |
|
|
Цитата: Я сейчас использую // в качестве комментария до конца текущей строки. Но зачем подстраиватся под другие языки или под редактор? Если вам нужна подсветка, то многие редакторы поддерживают пользовательские настройки подсветки. Я например использую Geany, у него есть подсветка для Форта, и для своего языка несложно поддержку добавить. Правда со случаями типа POSTPONE S" подсветка ломается и лучше такие вещи писать на отдельной строке.
[quote]Я сейчас использую // в качестве комментария до конца текущей строки.[/quote] Но зачем подстраиватся под другие языки или под редактор? Если вам нужна подсветка, то многие редакторы поддерживают пользовательские настройки подсветки. Я например использую Geany, у него есть подсветка для Форта, и для своего языка несложно поддержку добавить. Правда со случаями типа POSTPONE S" подсветка ломается и лучше такие вещи писать на отдельной строке.
|
|
|
|
Добавлено: Сб июл 20, 2019 18:44 |
|
|
|
|