Forth
http://www.fforum.winglion.ru/

Что есть Форт?
http://www.fforum.winglion.ru/viewtopic.php?f=9&t=3243
Страница 15 из 16

Автор:  KPG [ Вт окт 15, 2019 16:51 ]
Заголовок сообщения:  Re: Что есть Форт?

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

P.S. Что интересно:
Factor язык вошёл в 25 популярных языков, по количеству решённых задач. (25 место)
8th язык тоже наблюдается в топах таблиц.
Forth тоже достаточно представителен, но непонятно к какой версии он относится (скорее gForth, BigForth..., но на розетта коде gForth ,был ранее и отдельной строкой) (47-е место по количеству решённых на нём задач)
Ещё, при беглом просмотре, на графике есть язык Форт группы OForth :)

Можно, наверное, сообща улучшить статистику по Форт языку на ресурсе Rosettacode (с указанием диалекта Форт языка в решении)
- примерно как конкурс решения местных задач, а может ещё и добавить на ресурс какие то задачи для решения.
Изображение

Автор:  runl [ Сб ноя 23, 2019 12:56 ]
Заголовок сообщения:  Re: Что есть Форт?

Список задач нерешенных на форте расположен тут:
Tasks_not_implemented_in_Forth

Автор:  Hishnik [ Сб ноя 23, 2019 13:27 ]
Заголовок сообщения:  Re: Что есть Форт?

Посмотрел задачу "рисование пикселя". Много думал.

Код:
320 240 SET-WINDOW-SIZE
100 100 255 PIXEL

Вопрос только в том, есть ли эти слова в конкретной реализации.

Автор:  Ilya [ Сб ноя 23, 2019 14:00 ]
Заголовок сообщения:  Re: Что есть Форт?

Hishnik писал(а):
Посмотрел задачу "рисование пикселя". Много думал.

Код:
320 240 SET-WINDOW-SIZE
100 100 255 PIXEL

Вопрос только в том, есть ли эти слова в конкретной реализации.

Может не совсем то, но начиная с amForth и теперь для Mecrisp таскаю такое:
Код:
: _wrtData LCD_CS gpioc-low $22 wrtCmd wrtData ;

\ Draw a pixel with the foreground color
: pixel      ( x y --- )
    over over       ( x y --- x y x y)
    setBounds      ( x y x y --- )
    fgColor @ _wrtData
    clearBounds
    LCD_CS gpioc-high
;

Автор:  Hishnik [ Сб ноя 23, 2019 21:50 ]
Заголовок сообщения:  Re: Что есть Форт?

Ilya писал(а):
LCD_CS gpioc-high


Это еще более специфичная вещь.

Автор:  Ilya [ Сб ноя 23, 2019 23:28 ]
Заголовок сообщения:  Re: Что есть Форт?

Hishnik писал(а):
Ilya писал(а):
LCD_CS gpioc-high


Это еще более специфичная вещь.

Это вам только так "кажется"! На самом деле, я вначале "скопипастил" данную либу у одного "буржуя", адаптировал для 2-х индикаторов в amForth, далее я переехал на stm32 и также легко адаптировал, расширил и "углубил" уже работая на Mecrisp.

Автор:  KPG [ Вс ноя 24, 2019 15:25 ]
Заголовок сообщения:  Re: Что есть Форт?

Немного свежих новостей на forth.org.ru/ добавлено АС.

Автор:  Hishnik [ Вс ноя 24, 2019 18:17 ]
Заголовок сообщения:  Re: Что есть Форт?

Ilya писал(а):
Это вам только так "кажется"!

LCD_CS gpioc-high прямо указывает на специфический интерфейс LCD, который может быть и параллельным, и SPI, и даже memory mapped. А в видеокарту как выводить? У нее нет управления CS, у нее PCIe. Поэтому PIXEL с точки зрения прикладного программирования должен быть основой графики, иначе мы автоматически залезаем в весь зоопарк возможных платформ.

Автор:  Hishnik [ Вс ноя 24, 2019 18:43 ]
Заголовок сообщения:  Re: Что есть Форт?

KPG писал(а):
Немного свежих новостей на forth.org.ru/ добавлено АС.

Большинство постов - 0 ответов. Новости-то они новости, но кто их там читает и что в результате...

Автор:  f02732 [ Вт ноя 26, 2019 13:37 ]
Заголовок сообщения:  Re: Что есть Форт?

KPG писал(а):
Можно, наверное, сообща улучшить статистику по Форт языку на ресурсе Rosettacode (с указанием диалекта Форт языка в решении)
- примерно как конкурс решения местных задач, а может ещё и добавить на ресурс какие то задачи для решения.

Предлагаю создать специальную форт-систему для решения задач с Rosetta Code (Rosetta Forth) со встроенными алгоритмами для решения задач. Например чтобы решение пятнашек выглядело так:
Код:
CREATE GRID
15 C, 14  C, 1  C, 6 C,
9 C, 11  C, 4 C, 12 C,
0 C, 10  C, 7  C, 3 C,
13 C, 8 C, 5 C, 2 C,
GRID SOLVE-15-PUZZLE
и т.д.

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

Автор:  KPG [ Вт ноя 26, 2019 15:32 ]
Заголовок сообщения:  Re: Что есть Форт?

f02732 писал(а):
KPG писал(а):
Можно, наверное, сообща улучшить статистику по Форт языку на ресурсе Rosettacode (с указанием диалекта Форт языка в решении)
- примерно как конкурс решения местных задач, а может ещё и добавить на ресурс какие то задачи для решения.

Предлагаю создать специальную форт-систему для решения задач с Rosetta Code (Rosetta Forth) со встроенными алгоритмами для решения задач. Например чтобы решение пятнашек выглядело так:
Код:
CREATE GRID
15 C, 14  C, 1  C, 6 C,
9 C, 11  C, 4 C, 12 C,
0 C, 10  C, 7  C, 3 C,
13 C, 8 C, 5 C, 2 C,
GRID SOLVE-15-PUZZLE
и т.д.

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

Вполне здравая мысль, тогда и эта реализация потребует некоторого дополнения возможными решениями и из других Форт-систем по опубликованным решениям на ресурсе. :)

P.S. Навеяно сообщением в теме про Game-марафон
Довольно лаконично, но тоже "много" кода для игры крестики-нолики (с использованием библиотеки от ~yz)

Пока только добавил вариант консольного Тетриса из Форт примеров на ресурс Tetris on Rosettacode :)

Автор:  KPG [ Вт дек 03, 2019 13:54 ]
Заголовок сообщения:  Re: Что есть Форт?

Статья на Хабре.
Универсальный DSL. Возможно ли это?

Автор:  Victor__v [ Вт дек 03, 2019 16:10 ]
Заголовок сообщения:  Re: Что есть Форт?

KPG писал(а):

Лично мне картинка понравилась :))

Автор:  Hishnik [ Чт дек 05, 2019 02:53 ]
Заголовок сообщения:  Re: Что есть Форт?

KPG писал(а):
Статья на Хабре.

Интересно. Главное, производит впечатление работы, делаемой "без надрыва", который, к сожалению, встречался. Неужели переходим к этапу, когда Форт будет просто использоваться, когда нужно? :)

Автор:  KPG [ Чт дек 05, 2019 23:49 ]
Заголовок сообщения:  Re: Что есть Форт?

Hishnik писал(а):
Неужели переходим к этапу, когда Форт будет просто использоваться, когда нужно? :)

Сначала "сформировать" ForthUsersNet :)

Страница 15 из 16 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/