LINUX.ORG.RU

Новый релиз SP-Forth


0

0

На днях вышла новая версия компилятора языка Forth -- SP-Forth. Примечателен тем, что полностью разработан нашими ребятами. На нем реализовано несколько коммерческих проектов -- e-serv, nnCron. Что говорит о зрелости и стабильности интерпретатора.

>>> Подробности

anonymous

Проверено: Shaman007 ()

Ответ на: комментарий от Sergey_T

>Вообще-то Форт - интерпретируемый язык

Ничего подобного. Компилятор создает "шитый код", а интерпретатор это "шитый код" выполняет. Он не выполняет исходный код. Сначала идет компиляция.

kraw ★★★★
()
Ответ на: комментарий от anonymous

>У такой программы компилятор сможет заменить рекурсию циклом точно так же как это делает транслятор форта.

Ты абсолютно не в теме. Ты бы ещё предложил заменить рекурсию циклом. Или Хаскелл вытащи с его ленивостью, он вообще чемпионом будет, при чём без извратов с алгоритмикой. Или, вообще, на темплейтах фибоначи посчитай.

Речь шла о сравнении одинаковых алгоритмов, а ты - тёплое с мягким сравниваешь.

Если хочешь - раскрывай, вон, функцию Аккермана, там такой фокус не прокатит :D

KRoN73 ★★★★★
()
Ответ на: комментарий от anonymous

>Если хочешь пример - могу показать. Всё тривиально.

Нет, всё равно не пойму. У меня мозги никак на функциональщину переключиться не могут. Отравлены десятилетиями императивщины :D Хотя, если несложно и наглядно - давай.

KRoN73 ★★★★★
()
Ответ на: комментарий от anonymous

>Странно только, что на таком прекрасном языке почти никто не пишет.

Ничего странного. Мало кто пишет на Верблюде, Хаскелле или Форте. Зато миллионы леммингов пишут на ВБасике, Яве и Си/Си++ :D

KRoN73 ★★★★★
()
Ответ на: комментарий от anonymous

>Странно только, что на таком прекрасном языке почти никто не пишет. Короче, академически оно интересно, а вот на деле - никому нафиг не надо.

Слишком он необычен. И нет фоктора, который бы ЗАСТАВЛЯЛ в него въехать. Вот если бы до сих пор приходилось писать для чего-то масштаба ZX Spectrum, то преимущества в эффективности форта были бы востребованы.

kraw ★★★★
()
Ответ на: комментарий от anonymous

>Сколько времени займет написать на этом чудоязыке B+Tree для произвольного типа данных

Если с нуля и с сопоставимым уровнем тестирования/надёжности, то на порядок быстрее, чем на практически любом императивном ЯВУ.

Если с учётом готовых наработанных коммьюнити библиотек... то оно уже итак написано, зачем велосипед изобретать? :)

Тем паче, что SP-Forth прекрасно импортирует .dll и .so, JBForth - любые классы Java через reflection и т.п.

KRoN73 ★★★★★
()

Да - язык ОЧЕНЬ не похожий на другие. В свое время западал на нем. Даже под дос какие-то проги писали - побаловаться. Видел реализацию FORTH для pic16 микроконтроллеров. Правда не понял как его использовать.

А вообще-то SPFORTH только для офтопика - при чем здесь Linux?

ps для Linux есть GFORTH (GNUForth). Там есть чудесное описание и учебник на английском языке. Так же есть версия под офтопик. Ссылку не помню - в гугле найдете

Vetal80
()
Ответ на: OT: Factor от nosuchuser

>Мне интересно услышать, что профессиональные фортеры думают о Factor (http://sourceforge.net/projects/factor) Славы Пестова

Посмотрю попозже. Сейчас... на PHP писать надо. Ещё на прошлой неделе нужно было очередной этап проекта сдать :D

Кстати, если кого-то интересует Форт-скриптописание для Java (у нас это весь скриптовый механизм сервера LineageII), то могу предложить JBForth. Движок опенсорсный, GPL, выложен свободно на http://trac.balancer.ru/libs/

Поскольку написан целиком на Java, и не классический Форт, а ориентированный на Java-объекты, то скорость не блещет, сейчас всего раза в два быстрее Perl'а, но для ряда практических задач - весьма полезен :)

KRoN73 ★★★★★
()
Ответ на: комментарий от anonymous

>forth.org.ru - там много литературы. хотя Баранова первого читать не стоит, сложновато. проще Спайса+Келли.

Кстати, _всем_, а не только Фортерам, очень советую почитать "Способ мышления - Форт" ("Thinking Forth") Лео Броуди. Там море ценных советов, пригодных к программированию на многих других языках. Если бы этими советами пользовались все программисты, то в мире компьютеров обстановка была бы намного более устойчивой и предсказуемой :D

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

>Именно при том, что есть версия под Linux :)

УУУУУ! Не знал, сорри.

Кстати - о мемуарах...

Скажу о том, что меня в нем удивило. Представьте, написали вы прогу и хотите откомпилить. Так вот в режиме компиляции вы с внутри своей проги можете переключить ядро Форта в режим интерпретации, а потом опять продолжить компилировать. Где это нужно? Вы можете написать прогу и вставить в инсталляторе исходники, а откомпилируется она на клиентской машине (причем шустро-ждать долго не прийдется). При этом интерпретируемыми вставками можно прощупать конфигурацию компа - его быстродействие, и, к примеру, на особо времяподвязанных задачах вставлять в тело проги не шитый код (интерпретатор), а прямой - ассемблер. ИМХО конечно, подправьте если чо...

А вот недостаток его (ИМХО) для меня есть его доверчивость - вот не пишет ошибок, если что-то не то делаешь - он просто ложится. А вот если бы его доделать, чтобы чуть что по рукам давал - был бы более юзабельный. При этом не потерял бы скорость и компактность!!!

Vetal80
()
Ответ на: комментарий от KRoN73

> >Сколько времени займет написать на этом чудоязыке B+Tree для произвольного типа данных

> Если с нуля и с сопоставимым уровнем тестирования/надёжности, то на порядок быстрее, чем на практически любом императивном ЯВУ.

опять таки, смонительно. Форт разрабатывался как язык *управления действиями*, в нём нет средств (и их проблематично ввести в язык естественным образом) описания сложных структур данных. по моим оценкам, работа такого рода, займёт раза в три больше времени, чем на любом(!) алголоподобном языке. А с учётом неочевидности отладки -- и того больше.

PS ещё раз рекомендую внимательно почитать Баранова.

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

PPPS я давний поклонник Форта (с 84 года :), но не надо выдавать желаемое, за действительное. А с появлением интерпретируемых языков, базирующихся на сложных структурах данных (Python) и действительно позволяющих человеку очень быстро описывать алгоритмы, область применения Форта за пределами встроенных систем, стала выглядеть вообще, очень сомнительной. /Gleb

anonymous
()
Ответ на: комментарий от KRoN73

Хорошая это книга. Правда, к сожалению, Forth так и не стал моим инструментом или хобби :(

Alphaer ★★
()
Ответ на: комментарий от kraw

> >Вообще-то Форт - интерпретируемый язык

> Ничего подобного. Компилятор создает "шитый код", а интерпретатор это "шитый код" выполняет. Он не выполняет исходный код. Сначала идет компиляция.

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

/GLeb

anonymous
()
Ответ на: комментарий от anonymous

> forth.org.ru - там много литературы. хотя Баранова первого читать не стоит, сложновато. проще Спайса+Келли.

Если Баранов "сложноват", то лучше не тратить время и сразу переключиться на занятия цветоводством.

/GLeb

anonymous
()
Ответ на: комментарий от anonymous

> Странно только, что на таком прекрасном языке почти никто не пишет. Короче, академически оно интересно, а вот на деле - никому нафиг не надо.

На этом прекрасном языке написан OpenFirmware. Который является чем-то a la BIOS для всех эппловских, сановских и AFAIK каких-то ещё компьютеров.

И ещё куча низкоуровневых вещей.

Так что в своей нише форт рулит.

anonymous
()
Ответ на: комментарий от Vetal80

>А вот недостаток его (ИМХО) для меня есть его доверчивость - вот не пишет ошибок, если что-то не то делаешь - он просто ложится.

В Форте немного другая идеология. Отлавливание ошибок перенесено с компиллятора на программиста одновременно с сильным облегчением процесса :) В чём-то выходит хуже, в чём-то - лучше. Но в среднем, надёжность Форт-программы выходит более высокой. И в этом мало странного, если учитывать, что в основы идеологии разработки заладываются психологические приёмы. Каждое определение состоит из охватываемого сознанием числа токенов (5..9), никаких многоэкранных простыней кода, интерактивная отладка каждого "кирпичика" программы... Ни в каком другом языке нет столько возможностей для тестирования системы по мере написания, как в Форте :)

Вот реальный его недостаток - это глобальные переменные превозносимые стандартом. Они могут за собой тащить сайд-эффекты. Если бы не они - на Форте можно бы было легко писать _гарантированно_ безошибочные программы :)

KRoN73 ★★★★★
()
Ответ на: комментарий от anonymous

> Интересующимся стоит прочитать классическое описание идеологии форт систем (знаменитая Лениниградская реализация, позволившая сделать полноценную среду програмирования в памяти дисплейных терминалов ЕС, начало 80-ых): Баранов С.Н., Ноздрунов Н.Р., Язык ФОРТ и его реализации, Ленинград, Машиностроение, 1988. В своё время, не поленился отсканировать, могу выложить.

а можно мне это чудо посмотреть? :)
ianzag@mail.ru

// wbr

klalafuda ★☆☆
()
Ответ на: комментарий от anonymous

>Форт разрабатывался как язык *управления действиями*

Паскаль разрабатывался как учебный язык, Си - как макроассемблер... Это не аргумент :D

>в нём нет средств (и их проблематично ввести в язык естественным образом) описания сложных структур данных.

1. Ты абсолютно не знаешь идеологии Форта :D 2. Создание произвольных структур данных - это конёк Форта. Про ООП, которое изначально в Форт не закладывалось, я уже писал выше. А как вам, например, работа с предикатами в духе Пролога опять же, всего в несколько килобайт исходных текстов? А видел я и такое :D

KRoN73 ★★★★★
()

могу дополнить статью на wikipedia примерами отсюда

vadiml ★★★★★
()
Ответ на: комментарий от Vetal80

>А вот интересно - если на нем ядро Linux переписать? Шустрее было бы или нет.

Думаю, что в итоге было бы то же самое. Всё равно всё упрётся в скорость процессора :D А вот модульность ядра, настраиваемость, могли бы стать намного лучше.

Хотя тут нужно очень чётко понимать, что Форт - это идеология _высокого_ уровня. В потрохах он может быть очень разным. Скажем, сабжевый SP-Forth - это генератор не шитого кода, а нативного машинного. Соответственно - минус объём кода. Минус - скорость вызова низкоуровневых определений на x86. Зато плюс - большой выигрышь в вызове высокоуровневых определений.

Вы знаете, что на классическом x86 (по 486-й, м.б. в наше время массовых предсказаний переходов всё стало совсем иначе, не следил) прямой шитый код работает заметно быстрее подпрограммнго вызова? :)

Кстати, сегодня Форт наверняка очень хорошо смотрится на ARM/MIPS и т.п. архитектурах... Куча регистров с автоинкрементной/декрементной адресацией - это рай для него :)

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Слушайте, читаю я вас, стало интересно: что, получается, что Forth - язык с LALR грамматикой, где вся левая рекурсия выполняется симим программистом (ну там обратная польская нотация, к слову)?

annoynimous ★★★★★
()
Ответ на: комментарий от annoynimous

>Forth - язык с LALR грамматикой, где вся левая рекурсия

Вот тут уже моё невежество вылезает. Не знаю таких терминов :D

>выполняется симим программистом (ну там обратная польская нотация, к слову)?

Но по уловленной мною сути вопроса - да. В Форте многие интуитивно выводимые вещи кладутся на программиста. Т.е., понятно, что "леммингу" (не в оскорбительном смысле, а широкоохватном :D) классическая нотация понятнее постфиксной, но профессионалу постфикс даже предпочтительнее инфикса, ибо не несёт неоднозначностей, а для транслятора - это серьёзное его упрощение. Если вводить перевод инфиксной записи в постфиксную, с которой, собственно, и работает железо, то объём одного этого кода будет намного БОЛЬШЕ всего остального объёма традиционного Форт-транслятора :)

Форт - это потрясающий по своей _примитивности_ язык. Самый примитивный транслятор, примитивнейшая виртуальная машина в случае шитого кода, примтивная идеология... И всё это позволяет порождать чрезвычайно эффективные нишевые решения :)

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

> >Форт разрабатывался как язык *управления действиями*

> Паскаль разрабатывался как учебный язык, Си - как макроассемблер... Это не аргумент :D

Аргумент. Паскаль и Си -- алгоритмически полные универсальные, алголоподобные языки. Форт -- специализированый. Адаптивно -- расширяемый, да. Но специализированный.

Кстати, есть одна разработка МГУ по этим мотивам, усовершеноствованный Форт: язык РАЯ (расширяемый адаптивный язык).

> 1. Ты абсолютно не знаешь идеологии Форта :D 2. Создание произвольных структур данных - это конёк Форта. Про ООП, которое изначально в Форт не закладывалось, я уже писал выше.

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

Короче: получаем классическую реинкарнацию ассемблера - псевдокода. Хорошо для реализации "железа" или промежуточных языков трансляции, но плохо для человека и работы над большими (по современным понятиям) проектами.

anonymous
()
Ответ на: комментарий от KRoN73

Т.е. этот язык разрабатывался как идеологически-новое направаление или я совсем запутался? Просто читал А.Ахо (Про компиляторы) - так там описывались лексемы, токены, етс. как на Форте. Но с другой стороне, тот же транслятор языка С/С++, по Ахо, приводит ее к виду Форта.

Это не ради флейма, а просто пытаюсь понять!

ruslanz
()
Ответ на: комментарий от KRoN73

>Форт - это потрясающий по своей _примитивности_ язык. Самый примитивный транслятор, примитивнейшая виртуальная машина в случае шитого кода, примтивная идеология... И всё это позволяет порождать чрезвычайно эффективные нишевые решения :)

Кстати, читал какую-то книгу по форту - так там говорилось, что до сих пор идут споры по поводу Форта: -язык ли это низкого уровня или высокого? -интерпретатор или компилятор? -язык или среда программирования или просто идеология программирования или даже ОС?

А в книге говорилось что все выше - это и есть ФОРТ.

ps мемуары: помнится был такой ГРАФОРТ. так вот на 8086 он в реальном времени показывал 3д графику (wireframe) - в смысле нитевую (или скелетную- чо-то термин не могу подобрать - короче как в ELITE)

Vetal80
()
Ответ на: комментарий от annoynimous

> Слушайте, читаю я вас, стало интересно: что, получается, что Forth - язык с LALR грамматикой, где вся левая рекурсия выполняется симим программистом (ну там обратная польская нотация, к слову)?

именно.

компактно, чрезвычайно удобно при пограммировании (пишешь, как думаешь, по ходу дела).

Ужасно при отладке или восстановлении алгоритма по программе (язык "только для написания, чтения не предлагать" /есть исключения из этого правила, естественно. если приняты меры по созданию адекватных слов для предметно области. Например, есть изумительно изящный способ записи конечных автоматов, готовый к использованию :) (Computers in Physics, статья "Avoid decisions". 1991 или 93, кажется) /)

/GLeb

anonymous
()
Ответ на: комментарий от anonymous

>Форт -- специализированый. Адаптивно -- расширяемый, да. Но специализированный.

Ладно, контраргумент нужно было приводить мне иной. Форт - разрабатывался как универсальный ЯВУ четвёртого пополения. Без всякой специализации на железо и т.п. Цель, которая ставилась при его разработке - поднять на порядок производительность программиста при сохранении качества равного кода в сравнении с классическими тогда алголоподобными языками. На тот момент - цель была достигнута. То, что Форт не выдержал конкуренции с классическими языками - это уже иной вопрос.

Но многие путают цели языка и его первые применения :D Тут - да. Форт впервые был использован для управления радиотелескопом. Но это не говорит, что он разрабатывался для этого :D

KRoN73 ★★★★★
()
Ответ на: комментарий от anonymous

>Но чтобы такие словарные статьи -- структуры, могли взаимодействовать между собой прозрачно для программиста, нужно прикладывать доп. усилия, и усилия человека, а не системы программирования.

Что значит "прозрачно для программиста"? Не использовать *. для плавучки как в O'caml? Пожалуйста, переопредели * :)

Между собой и операндами структуры в форте могут взаимодействовать произвольно.

>Отладка "снизу вверх", здесь не помогает.

Помогает :)

>Простое наследование (расширение, уточнение -- как угодно) структур данных, без участия человека -- в общем случае, невозможно (или требует введения специального кода в текст словарной статьи

Вот ты сам и ответил. Не забывай, что Форт - не язык, а метаязык. Расширение его транслятора - совершенно штатное явление. На форте пишут проблемно-ориентированные _языки_.

> но плохо для человека

Тут ты промахнулся. Форт на высоком уровне как никакой другой язык близок к языку натуральному.

>и работы над большими (по современным понятиям) проектами.

Это - есть. Но это недостаток не идеологии, а реализаций. Что из себя будут в плане коллективной работы стоить те же Си или Java без современных средств разработки?

KRoN73 ★★★★★
()
Ответ на: комментарий от ruslanz

>Т.е. этот язык разрабатывался как идеологически-новое направаление или я совсем запутался?

Да. Только направление не прижилось :) Вот, даже я, большой любитель и ценитель Форта, пишу сейчас в основном на PHP и Java :D

KRoN73 ★★★★★
()
Ответ на: комментарий от Vetal80

>А в книге говорилось что все выше - это и есть ФОРТ.

Угу, именно так. Всё равно, что пытаться определить, является мобильный телефон классическим телефоном или классической рацией :)

Ответы в статье наверняка были, но я пройдусь... "язык ли это низкого уровня" - бузусловно! Ты зачастую управляешь непосредственно процессом трансляции, можешь работать прямо с кодом. "или высокого" - конечно. В нём даже оператора GOTO нет! :) "интерпретатор" - конечно. Он же может исполнять свой код "с листа" даже в конечных решениях. "компилятор" - да. Даже способный во многих реализациях порождать нативный код :) ... ну и т.д.

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Так теперь начинаю вникать. :) Но понятие идеологии зависит от конкретного человека и его понимании этой идеологии. Ну да ладно, лучше почитаю умные мысли :).

ruslanz
()
Ответ на: комментарий от anonymous

>Ужасно при отладке или восстановлении алгоритма по программе

При отладке - не согласен. Лично мне, любой другой язык в отладке на порядок сложнее Форта. Видимо, индивидуальный подход к проектированию :)

Вот с восстановлением алгоритма - согласен. После того, как при написании алгоритм декомпозирован на элементы, собрать их в целую автономную структуру уже сложно. К счастью, в своих программах это случается очень редко (помним, что Форт относится к категории самодокументирующихся языков), а в чужих... В больших программах на классических ЯВУ разбираться обычно ничуть не легче. Когда алгоритм размазан в виде простыни в несколько экранов кода, то там, пока его досконально не вычитаешь, нередко менять что-то просто опасно для жизни программы :D

KRoN73 ★★★★★
()
Ответ на: комментарий от ruslanz

>Но понятие идеологии зависит от конкретного человека и его понимании этой идеологии.

Именно так :) При чём чаще всего играет роль именно _понимание_ идеологии. Поэтому нам, мозги которых закомпостированы императивными наследниками Алгола, так трудно воспринимать и Форт, и функциональные языки... Они - _иные_ :D

Хотя необходимость, порой, именно толкает к ним. Так было с Фортом во времена 8-битных ПК, так, возможно, будет с ФП при массовом переходе к мультиядерным и мультипроцессорным системам.

KRoN73 ★★★★★
()
Ответ на: комментарий от anonymous

баранов

> В своё время, не поленился отсканировать, могу выложить.
друг, кали ласка - выложи где-нибудь,или, если на моё мыло скинешь login, pw - могу ftp вход дать. у меня эту книгу в свёо время нагло спёрли, очень жалел. хоть молодость вспомнить - глядишь - и sparc obp прохачу как-нибудь.:)
мыло - byg гав-гав d7.ru

mumpster ★★★★★
()
Ответ на: комментарий от annoynimous

баранов

> где вся левая рекурсия выполняется
да.

mumpster ★★★★★
()
Ответ на: комментарий от klalafuda

Там книга распознанная (что здорово), но увы, рисунки пострадали.

Выкладываю Баранова - Ноздрунова к себе домой, на ftp://217.18.149.8/pub/Baranov-Nozdrunov_YazFORTHRealizacii-1988.djvu

Будет лежать до вечера (так как платить за внешку несколько проблематично :)

Если интерес есть, могу выложить ещё кое-какие раритетные материалы по форту.

внимание, только ftp! попытка зайти куда-то ещё, скорее всего, привёдет к дооолгому блокированию вызывающей машины :)

/GLeb

anonymous
()
Ответ на: комментарий от KRoN73

>>Т.е. этот язык разрабатывался как идеологически-новое направаление или я совсем запутался?

>Да. Только направление не прижилось :)

нет. Форт разрабатывался как *управляющий* язык. Для автоматизации эксперимента. В условиях очень скромных ресурсов машины (8 - 16 разрядные машины с памятью, типично, от 4 kb до, в лучшем случае, 16 Kслов) таких попыток было достаточно и за бугром, и у нас.

Разного рода структурные асемблеры, транслируемые псевдокоды, специализированые интерпретаторы (тот же Квейсик и Фокал).

Форт -- самая необычная и универсальная. Но ориентированая. прежде всего, на конкретную предметную область.

/Gleb

anonymous
()
Ответ на: комментарий от anonymous

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

anonymous
()
Ответ на: комментарий от anonymous

>нет. Форт разрабатывался как *управляющий* язык.

"Какие фаши докасательства?" (c).

У меня - слова автора. Я не нашёл, к сожалению, тех цитат, которые держу в памяти, но и этого, ИМХО, достаточно:

== cut ===

Я разрабатывал Форт в течение нескольких лет как интерфейс между мной и компьютерами, для которых мне пришлось составлять программы. Традиционные языки программирования не удовлетворяли меня по своим изобразительным средствам, простоте и гибкости, поэтому, чтобы понять, что же нужно программисту для создания эффективных программ, я отказался от многих общепринятых правил. Наиболее существенной мне представляется возможность дополнять язык любыми средствами по мере необходимости.

Свои первые результаты я получил в то время, когда работал с моделью IBM ИЗО—ЭВМ «третьего поколения». Они показались мне настолько значительными, что я посчитал новый язык «языком машин четвертого (fourth) поколения» и назвал бы его FOURTH (четвертым), если бы модель ИЗО допускала пятисимвольные идентификаторы. Таким образом FOURTH превратился в FORTH1 (Форт) —своеобразная игра слов.

«Сохранять простоту языка» — так примерно формулируется основной принцип, которым я руководствовался в процессе работы над Фортом и продолжаю руководствоваться при его применении. Элегантность решения — в его простоте. Простота достигается при глубоком изучении существа проблемы и осознается при получении правильного решения. Это положение следует особо подчеркнуть, поскольку оно противоречит устоявшемуся мнению о том, что мощность языка увеличивается с возрастанием его сложности. Простота гарантирует надежность, компактность и быстродействие Форт-программ, а значит, и доверие к ним пользователей.

== cut ===

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

>>в Форте *есть* аналог goto :)

>В шитом коде, в ассемблере... - да. Но не в Форте :)

не-а. именно в форте.

/GLeb

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.