Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Вт июн 28, 2022 07:19

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 734 ]  На страницу Пред.  1 ... 45, 46, 47, 48, 49
Автор Сообщение
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Ср апр 13, 2022 18:02 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7542
Благодарил (а): 21 раз.
Поблагодарили: 142 раз.
А что мешает писать код плохому программисту? :D


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Пт апр 15, 2022 20:26 
Не в сети

Зарегистрирован: Пт июн 06, 2008 14:21
Сообщения: 120
Откуда: Карелия
Благодарил (а): 1 раз.
Поблагодарили: 4 раз.
А как оценить плохого программиста от хорошего? Все допускают ошибки, но на них хорошие учатся, как еще классик сказал: О сколько нам открытий чудных
Готовят просвещенья дух И Опыт,сын ошибок трудных....


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Пт апр 15, 2022 22:09 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 1683
Благодарил (а): 6 раз.
Поблагодарили: 62 раз.
F-MAP писал(а):
А как оценить плохого программиста от хорошего?

К такой же постановке вопроса от обратного пришёл намедни в вариантах осознания гносеологии. :)

P.S. Вероятно, способность находить путь решения каких то обозначенных кем то или самому себе каких то задач и есть основополагающие отличие одного программиста от другого.
При этом оптимальность/неоптимальность выбранного пути решения не так важна от сделанного решения приносящего пользу.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Пт апр 15, 2022 22:29 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7542
Благодарил (а): 21 раз.
Поблагодарили: 142 раз.
F-MAP писал(а):
А как оценить плохого программиста от хорошего?

Если в основном искать описания, как оно сделано другими, то оценивать как-то и нечего.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Вс апр 17, 2022 01:33 
Не в сети

Зарегистрирован: Пн окт 05, 2009 18:21
Сообщения: 359
Откуда: Минск SotnikSTO@mail.ru
Благодарил (а): 37 раз.
Поблагодарили: 3 раз.
F-MAP писал(а):
... как еще классик сказал: О сколько нам открытий чудных ...
... готовит открывачки крюк!
Некоторые в таком состоянии очень даже талантливы. :)

_________________
Сотник. SotnikSTO@mail.ru


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Пн апр 18, 2022 19:27 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 1683
Благодарил (а): 6 раз.
Поблагодарили: 62 раз.
Brew is a project trying out what I call 'Artificial Code Evolution'. 'Evolutionary Programming' using FORTH and designed for the Linux text console.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Вт апр 19, 2022 21:01 
Не в сети

Зарегистрирован: Пт июн 06, 2008 14:21
Сообщения: 120
Откуда: Карелия
Благодарил (а): 1 раз.
Поблагодарили: 4 раз.
Sotnik писал(а):
F-MAP писал(а):
... как еще классик сказал: О сколько нам открытий чудных ...
... готовит открывачки крюк!
Некоторые в таком состоянии очень даже талантливы. :)

Sotnik, весна ведь..


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Сб апр 23, 2022 19:07 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 1683
Благодарил (а): 6 раз.
Поблагодарили: 62 раз.
Ознакомился с дизайном стeкового языка mStoical (форк от Stoical 2002г)
mStoical

Ощущения от дизайна языка неоднозначные, но положительные от ощущения опробования сей разработки.
Чем то очень близко к идеям Форт, но и в чём то не так однозначно.

К примеру Фоpтовская точка заменена на интелектуальный = (равно), а сами операции сравнения на qt, lt, ... слова
Можно найти некотоые аналогии слов Stoical в семантике используемой в Forth, но не всегда аналогичные.

К примеру есть слово // переключающее систему из предыдушего State состояния в инверсное ...
Другие моменты в дизайне Stoical языка (без относительно возможностей синтаксиса) "ортогональны" типовым Форт реалиям как "работа" с разными типами на стеке и возможность их принудительного изменения и возможности принудительного контроля в рантайме.
...

Есть ощущение, что какие то идеи этого языка можно использовать и в Форт практике разработки.
Документация проекта достаточно подробная, но у меня пока не получилось, при её рассмотрении и терминальном диалoге с системой, прояснить какие то варианты применения слов Stoical языка.

P.S. Интересно услышать какие то мнения об идеях этого дизайна конкатенативного языка Stoical.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Вс апр 24, 2022 15:26 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 1683
Благодарил (а): 6 раз.
Поблагодарили: 62 раз.
VoidVolker писал(а):
Наткнулся на упоминание Форта в таком очень неожиданном контексте как "Теория всемирного заговора". В интервью Пита Питерсона (инсайдер, работавший на правительство) у Девида Уилкока (собирает информацию по теории заговора и делится с общественностью) на телеканеле Гайя упоминается Форт и, судя по всему, 144 ядерный чип SeaForth, а так же Чак Мур, Forth Inc (SwiftForth) и многие другие известные личности стоявшие у истоков современной IT. Сам процессор SeaForth не упоминается, говорится только о количестве ядер - 144, что там матрица не 12х12 (8х18 по факту) и 86 миллиардов операций в секунду (сколько на самом деле не помню, т.к. там у разных слов число операций разное) и то, что он был создан в 2011 году. На мой взгляд довольно странно говорить, что у тебя есть крутой процессор, но не говорить как он называется, хотя он открыт и доступен для широкой публики. Ну да ладно, просто оставлю тут ссылки: кому интересно будет — могут ознакомиться.
Русский перевод тут: http://divinecosmos.e-puzzle.ru/page.php?al=444
Статью на английском не нашел.
Само интервью на сайте телеканала, но без регистрации не посмотреть: https://www.gaia.com/video/microchips-c ... revolution
Информации про Пита не очень много удалось найти: http://www.marketwired.com/press-releas ... 171541.htm
Про SeaForth тут и без дополнительных ссылок есть информация на нашем форуме.


Пара цитат из этого интервью.
Вот же как. Смеяться или плакать? :)


Цитата:

П.П.: Есть много… Три-четыре дня назад я кое-что видел в Интернете. Мне бы хотелось вернуть его обратно. Не знаю, кто мне его прислал. Возможно, оно предназначалось для одноразового просмотра. Изображалась кое-какая робототехника русских. У них есть маленькое шестиколесное средство передвижения. И еще у них есть пушка, способная передвигаться, размещаться в определенном месте, стрелять, а потом перемещаться в другое место, что-то типа пушки, встроенной в бегуна на короткие дистанции на Олимпийских играх.


Цитата:
П.П.: Возможно, Россия… Первое, что приходит в голову… Я бы предположил, что 75-80% всего русского программирования осуществляется на языке Форт.Я знаю об этом потому, что являюсь членом одной из российских ассоциаций астронавтики. Я знаю, что все их программирование выполняется почти полностью на языке Форт, поскольку он совершенен для такого вида операции – операции с роботами.


Цитата:
П.П.: Да. Чип Novix был ранним чипом, который пытался работать с Форт напрямую и работал с Форт напрямую. Он использовался в нескольких сферах, о которых, я сомневаюсь, что могу рассказывать, не получив на это одобрения.

Д.У.: Понятно.

П.П.: Чип был доступен. Он прятался на виду, и в принципе был доступен миру. Возможно, в настоящее время большинство чипов Novix (они все еще производятся) скупается русскими.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Вс апр 24, 2022 15:59 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7542
Благодарил (а): 21 раз.
Поблагодарили: 142 раз.
Жуть какая. Ощущение, что Чарльза Мура стабильно путают с Гордоном Муром. Хорошо еще не с Деми Мур (хотя не факт что не припишут ему и смену пола). Русские, побирающиеся по старым чипам - голубая мечта западных неудачников. Раз у них плохо, то что уж в России-то творится...
Вобщем, в стадии упадка империи маразм становится нормой.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Пн май 02, 2022 11:00 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 1683
Благодарил (а): 6 раз.
Поблагодарили: 62 раз.
Очень маленький "Форт" на Си примерно в 100 строк

gcc forth.c -o forth

// немного изменённый вариант

#include <stdio.h>
#include <string.h>

// Main Memory
char memory[100000];
char *mem = memory;

// Dictionary entry type
typedef struct {
char name[100];
void* code;
} dict_t;

#define ALLOC(x) \
mem; \
memcpy(mem, (char*)&(x), sizeof(x)); \
mem += sizeof(x); \

#define DEFINE(x,y) \
(*dsp); \
strcpy((*dsp)->name, x); \
(*dsp)->code = y; \
(*dsp)++; \

#define NEXT \
(*ip)++; \
goto ***(ip); \

int main() {

/* Pointers */

void **instruction_pointer;
void ***ip = (void ***)ALLOC(instruction_pointer);

long *stack_pointer;
long **sp = (long **)ALLOC(stack_pointer);

void **return_stack_pointer;
void ***rsp = (void ***)ALLOC(return_stack_pointer);

dict_t *dictionary_stack_pointer;
dict_t **dsp = (dict_t **)ALLOC(dictionary_stack_pointer);

/* Stacks */

long stack[10];
*sp = (long *)ALLOC(stack);

void *return_stack[10];
*rsp = (void **)ALLOC(return_stack);

dict_t dictionary_stack[10];
*dsp = (dict_t *)ALLOC(dictionary_stack);

/* Memory */
char code[] = "ok>";
void *cp = code;

dict_t *bye = (dict_t *)DEFINE("bye", &&bye);
dict_t *lookup = (dict_t *)DEFINE("lookup", &&lookup);
dict_t *ok = (dict_t *)DEFINE("ok", &&ok);

void *word[] = { lookup->code, ok->code, bye->code };
*ip = (word)-1;

NEXT;

return 0;

ok:
puts(code);
gets(code);
puts(code);
NEXT;

bye:
puts("bye");
return 0;

lookup:
puts("Run Code");
NEXT;
}


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Чт май 12, 2022 09:35 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 1683
Благодарил (а): 6 раз.
Поблагодарили: 62 раз.
Forthic (в хабе LinkedIn на Github)
Цитата:
Forthic is a stack-based language for writing tweakable applications by coordinating code written in a host language.

Код на Pyithon и JavaScript со своим результирующим лексиконом слов.

P.S. Как понимаю с целью делать Форт-скриптовые приложения и в рамках использования Web браузерных технологий. Детально не разбирался в возможностях предлагаемого решения.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Пн май 16, 2022 12:22 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 1683
Благодарил (а): 6 раз.
Поблагодарили: 62 раз.
Не минималистический Форт с расширением объектами (C++)

Ядро системы собирается и под Linux (и другие варианты), хотя разработка ориенитрована на Windows.

P.S. для вывода списка слов VLIST слово. :)
Возможности реализации ещё не смотрел более детально, но под Linux
подав файл на вход системы в командной строке, к примеру: ./forth < test.txt
можно запустить тесты системы.
ok> requires test

имеется и расширение ansi.txt для совместимости с ANSI Forth, но, вроде, не в полной реализации.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Интересные ссылки
СообщениеДобавлено: Чт июн 02, 2022 11:20 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 1683
Благодарил (а): 6 раз.
Поблагодарили: 62 раз.
Небольшой проект "Си" то Forth сделанный с использованием парсера Bison
C-to-Forth-compiler]

У меня при сборке вылезла ошибка на строке 131 файла на "скобку"
Достаточно ; (запятую) перенести в тело токена funccal на следующюей строке завершающим символом.

P.S. Для чего в практике использования Форт интересно такое решение не совсем понятно, но выглядит интересно реализованным.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 734 ]  На страницу Пред.  1 ... 45, 46, 47, 48, 49

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


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

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


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

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