Автор |
Сообщение |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
Не минималистический Форт с расширением объектами (C++) Ядро системы собирается и под Linux (и другие варианты), хотя разработка ориенитрована на Windows. P.S. для вывода списка слов VLIST слово.  Возможности реализации ещё не смотрел более детально, но под Linux подав файл на вход системы в командной строке, к примеру: ./forth < test.txt можно запустить тесты системы. ok> requires test имеется и расширение ansi.txt для совместимости с ANSI Forth, но, вроде, не в полной реализации.
[url=https://github.com/gnosys2u/forth]Не минималистический Форт с расширением объектами[/url] (C++)
Ядро системы собирается и под Linux (и другие варианты), хотя разработка ориенитрована на Windows.
P.S. для вывода списка слов VLIST слово. :) Возможности реализации ещё не смотрел более детально, но под Linux подав файл на вход системы в командной строке, к примеру: ./forth < test.txt можно запустить тесты системы. ok> requires test
имеется и расширение [b]ansi.txt [/b]для совместимости с ANSI Forth, но, вроде, не в полной реализации.
|
|
|
 |
Добавлено: Пн май 16, 2022 12:22 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
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 браузерных технологий. Детально не разбирался в возможностях предлагаемого решения.
[url=https://github.com/linkedin/forthic]Forthic[/url] (в хабе LinkedIn на Github) [quote]Forthic is a stack-based language for writing tweakable applications by coordinating code written in a host language.[/quote] Код на Pyithon и JavaScript со своим результирующим лексиконом слов.
P.S. Как понимаю с целью делать Форт-скриптовые приложения и в рамках использования Web браузерных технологий. Детально не разбирался в возможностях предлагаемого решения.
|
|
|
 |
Добавлено: Чт май 12, 2022 09:35 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
Очень маленький "Форт" на Си примерно в 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; }
[url=https://github.com/173duprot/tinyforth]Очень маленький "Форт" на Си примерно в 100 строк[/url]
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; }
|
|
|
 |
Добавлено: Пн май 02, 2022 11:00 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
Жуть какая. Ощущение, что Чарльза Мура стабильно путают с Гордоном Муром. Хорошо еще не с Деми Мур (хотя не факт что не припишут ему и смену пола). Русские, побирающиеся по старым чипам - голубая мечта западных неудачников. Раз у них плохо, то что уж в России-то творится... Вобщем, в стадии упадка империи маразм становится нормой.
Жуть какая. Ощущение, что Чарльза Мура стабильно путают с Гордоном Муром. Хорошо еще не с Деми Мур (хотя не факт что не припишут ему и смену пола). Русские, побирающиеся по старым чипам - голубая мечта западных неудачников. Раз у них плохо, то что уж в России-то творится... Вобщем, в стадии упадка империи маразм становится нормой.
|
|
|
 |
Добавлено: Вс апр 24, 2022 15:59 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
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 (они все еще производятся) скупается русскими.
[quote="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-cybernetic-revolution Информации про Пита не очень много удалось найти: http://www.marketwired.com/press-release/mediag3-welcomes-dr-pete-peterson-software-development-pioneer-accomplished-engineer-1171541.htm Про SeaForth тут и без дополнительных ссылок есть информация на нашем форуме.[/quote]
Пара цитат из этого интервью. Вот же как. Смеяться или плакать? :)
[quote]
П.П.: Есть много… Три-четыре дня назад я кое-что видел в Интернете. Мне бы хотелось вернуть его обратно. Не знаю, кто мне его прислал.[b] Возможно, оно предназначалось для одноразового просмотра. Изображалась кое-какая робототехника русских.[/b] У них есть маленькое шестиколесное средство передвижения. И еще у них есть пушка, способная передвигаться, размещаться в определенном месте, стрелять, а потом перемещаться в другое место, что-то типа пушки, встроенной в бегуна на короткие дистанции на Олимпийских играх. [/quote]
[quote]П.П.: Возможно, Россия… Первое, что приходит в голову… [b]Я бы предположил, что 75-80% всего русского программирования осуществляется на языке Форт[/b].Я знаю об этом потому, что являюсь членом одной из российских ассоциаций астронавтики. Я знаю, что все их программирование выполняется почти полностью на языке Форт, поскольку он совершенен для такого вида операции – операции с роботами.[/quote]
[quote]П.П.: Да. Чип Novix был ранним чипом, который пытался работать с Форт напрямую и работал с Форт напрямую. Он использовался в нескольких сферах, о которых, я сомневаюсь, что могу рассказывать, не получив на это одобрения.
Д.У.: Понятно.
П.П.: Чип был доступен. Он прятался на виду, и в принципе был доступен миру. Возможно,[b] в настоящее время большинство чипов Novix (они все еще производятся) скупается русскими[/b].[/quote]
|
|
|
 |
Добавлено: Вс апр 24, 2022 15:26 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
Ознакомился с дизайном стeкового языка mStoical (форк от Stoical 2002г) mStoicalОщущения от дизайна языка неоднозначные, но положительные от ощущения опробования сей разработки. Чем то очень близко к идеям Форт, но и в чём то не так однозначно. К примеру Фоpтовская точка заменена на интелектуальный = (равно), а сами операции сравнения на qt, lt, ... слова Можно найти некотоые аналогии слов Stoical в семантике используемой в Forth, но не всегда аналогичные. К примеру есть слово // переключающее систему из предыдушего State состояния в инверсное ... Другие моменты в дизайне Stoical языка (без относительно возможностей синтаксиса) "ортогональны" типовым Форт реалиям как "работа" с разными типами на стеке и возможность их принудительного изменения и возможности принудительного контроля в рантайме. ... Есть ощущение, что какие то идеи этого языка можно использовать и в Форт практике разработки. Документация проекта достаточно подробная, но у меня пока не получилось, при её рассмотрении и терминальном диалoге с системой, прояснить какие то варианты применения слов Stoical языка. P.S. Интересно услышать какие то мнения об идеях этого дизайна конкатенативного языка Stoical.
Ознакомился с дизайном стeкового языка mStoical (форк от Stoical 2002г) [url=https://github.com/mikewarot/mstoical]mStoical[/url]
Ощущения от дизайна языка неоднозначные, но положительные от ощущения опробования сей разработки. Чем то очень близко к идеям Форт, но и в чём то не так однозначно.
К примеру Фоpтовская точка заменена на интелектуальный = (равно), а сами операции сравнения на qt, lt, ... слова Можно найти некотоые аналогии слов Stoical в семантике используемой в Forth, но не всегда аналогичные.
К примеру есть слово // переключающее систему из предыдушего State состояния в инверсное ... Другие моменты в дизайне Stoical языка (без относительно возможностей синтаксиса) "ортогональны" типовым Форт реалиям как "работа" с разными типами на стеке и возможность их принудительного изменения и возможности принудительного контроля в рантайме. ...
Есть ощущение, что какие то идеи этого языка можно использовать и в Форт практике разработки. Документация проекта достаточно подробная, но у меня пока не получилось, при её рассмотрении и терминальном диалoге с системой, прояснить какие то варианты применения слов Stoical языка.
P.S. Интересно услышать какие то мнения об идеях этого дизайна конкатенативного языка Stoical.
|
|
|
 |
Добавлено: Сб апр 23, 2022 19:07 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
Sotnik писал(а): F-MAP писал(а): ... как еще классик сказал: О сколько нам открытий чудных ... ... готовит открывачки крюк! Некоторые в таком состоянии очень даже талантливы.  Sotnik, весна ведь..
[quote="Sotnik"][quote="F-MAP"]... как еще классик сказал: О сколько нам открытий чудных ...[/quote] ... готовит открывачки крюк! Некоторые в таком состоянии очень даже талантливы. :)[/quote] Sotnik, весна ведь..
|
|
|
 |
Добавлено: Вт апр 19, 2022 21:01 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
[url=http://www.robertepprecht.ch/brew/index.html]Brew is a project trying out what I call 'Artificial Code Evolution'. 'Evolutionary Programming' using FORTH and designed for the Linux text console.[/url]
|
|
|
 |
Добавлено: Пн апр 18, 2022 19:27 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
F-MAP писал(а): ... как еще классик сказал: О сколько нам открытий чудных ... ... готовит открывачки крюк! Некоторые в таком состоянии очень даже талантливы. 
[quote="F-MAP"]... как еще классик сказал: О сколько нам открытий чудных ...[/quote] ... готовит открывачки крюк! Некоторые в таком состоянии очень даже талантливы. :)
|
|
|
 |
Добавлено: Вс апр 17, 2022 01:33 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
F-MAP писал(а): А как оценить плохого программиста от хорошего? Если в основном искать описания, как оно сделано другими, то оценивать как-то и нечего.
[quote="F-MAP"]А как оценить плохого программиста от хорошего? [/quote] Если в основном искать описания, как оно сделано другими, то оценивать как-то и нечего.
|
|
|
 |
Добавлено: Пт апр 15, 2022 22:29 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
F-MAP писал(а): А как оценить плохого программиста от хорошего? К такой же постановке вопроса от обратного пришёл намедни в вариантах осознания гносеологии.  P.S. Вероятно, способность находить путь решения каких то обозначенных кем то или самому себе каких то задач и есть основополагающие отличие одного программиста от другого. При этом оптимальность/неоптимальность выбранного пути решения не так важна от сделанного решения приносящего пользу.
[quote="F-MAP"]А как оценить плохого программиста от хорошего? [/quote] К такой же постановке вопроса от обратного пришёл намедни в вариантах осознания гносеологии. :)
P.S. Вероятно, способность находить путь решения каких то обозначенных кем то или самому себе каких то задач и есть основополагающие отличие одного программиста от другого. При этом оптимальность/неоптимальность выбранного пути решения не так важна от сделанного решения приносящего пользу.
|
|
|
 |
Добавлено: Пт апр 15, 2022 22:09 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
А как оценить плохого программиста от хорошего? Все допускают ошибки, но на них хорошие учатся, как еще классик сказал: О сколько нам открытий чудных Готовят просвещенья дух И Опыт,сын ошибок трудных....
А как оценить плохого программиста от хорошего? Все допускают ошибки, но на них хорошие учатся, как еще классик сказал: О сколько нам открытий чудных Готовят просвещенья дух И Опыт,сын ошибок трудных....
|
|
|
 |
Добавлено: Пт апр 15, 2022 20:26 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
А что мешает писать код плохому программисту? 
А что мешает писать код плохому программисту? :D
|
|
|
 |
Добавлено: Ср апр 13, 2022 18:02 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
Hishnik писал(а): Сфокусированность авторов на вариациях стандарта ANS94 обуславливает ограниченные возможности практического использования таких продуктов, для которых не приводятся подробные методики использования. В качестве примера можно привести..." По аналогии - Так и плохому танцору тоже много чего мешает... 
[quote="Hishnik"] Сфокусированность авторов на вариациях стандарта ANS94 обуславливает ограниченные возможности практического использования таких продуктов, для которых не приводятся подробные методики использования. В качестве примера можно привести..."[/quote] По аналогии - Так и плохому танцору тоже много чего мешает... :)
|
|
|
 |
Добавлено: Ср апр 13, 2022 17:58 |
|
|
 |
|
|
Заголовок сообщения: |
Re: Интересные ссылки |
 |
|
KPG писал(а): А какой больщой обзор нужен на "300-а строк" Си кода Форт системы?
А про такие - небольшой. "В настоящее время существует ряд трансляторов Форта, реализуемых на ЯВУ в виде консольного приложения. Они занимают 300-500 строк кода, реализуют 50-100 слов ядра Форта и обычно используют варианты ШК, реже машинный код. Сфокусированность авторов на вариациях стандарта ANS94 обуславливает ограниченные возможности практического использования таких продуктов, для которых не приводятся подробные методики использования. В качестве примера можно привести..."
[quote="KPG"]А какой больщой обзор нужен на "300-а строк" Си кода Форт системы? [/quote] А про такие - небольшой. "В настоящее время существует ряд трансляторов Форта, реализуемых на ЯВУ в виде консольного приложения. Они занимают 300-500 строк кода, реализуют 50-100 слов ядра Форта и обычно используют варианты ШК, реже машинный код. Сфокусированность авторов на вариациях стандарта ANS94 обуславливает ограниченные возможности практического использования таких продуктов, для которых не приводятся подробные методики использования. В качестве примера можно привести..."
|
|
|
 |
Добавлено: Ср апр 13, 2022 17:53 |
|
|
 |
|