Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пт мар 29, 2024 02:49

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 66 ]  На страницу Пред.  1, 2, 3, 4, 5
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 09, 2009 17:13 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
Хищник писал(а):
Но так и не увидел практических результатов

Времени у меня мало. Заботится о фортерах мало кому интересно.

Хищник писал(а):
почему не потратить такие усилия на что-то другое

Меня интересует глобальное развитие Форта.

Хищник писал(а):
надо написать компилятор и IDE

В данном случае, си компилятор и IDE смешивать ненужно.
Приличное IDE нужно в форте вне зависимости от применяемых в Форте синтаксисов.
При этом, как компилятор так и IDE писать на Форте не обязательно.
Вообще достаточно сделать хороший конвертер из Си в Форт.
(неважно на чем написан конвертер).
Можно наоборот встроить форт в программу на Си.
Можно программу на Си представить в виде ДЛЛ и вызвать из Форта.

Хищник писал(а):
надо написать ФортОС... а что еще - Doom 3 повторить?

Не нужно ничего повторять. Форт можно встраивать в любые программы и прежде всего
в ядра всех ОС. Я например, встраиваю Форт в игру spring.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 09, 2009 17:24 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Mihail писал(а):
Времени у меня мало. Заботится о фортерах мало кому интересно.

Гм. Ну а зачем тогда с завидной регулярностью давать ссылки на свои полуфабрикаты? Люди начинают интересоваться, а им ррраз - "уже давно есть". А потом начинаются уточнения, что это еще не доведено, что времени мало и вообще...
Mihail писал(а):
Меня интересует глобальное развитие Форта.

А меня - где поблизости можно найти вкусный кофе. Здесь же не ЖЖ, чтобы просто рассказывать об интересах без полезного выхода для других людей.
Mihail писал(а):
Вообще достаточно сделать хороший конвертер из Си в Форт.
(неважно на чем написан конвертер).
Можно наоборот встроить форт в программу на Си.
Можно программу на Си представить в виде ДЛЛ и вызвать из Форта.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб июл 11, 2009 19:59 
Не в сети

Зарегистрирован: Вс июн 21, 2009 19:11
Сообщения: 81
Откуда: Н.Новгород
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Неожиданный поворот сюжета.
http://c-fvm.sourceforge.net/index.php
Кросс-компилятор с форта на си.
Правда, на таргет заливается уже готовая прошивка, интерпретатор байт-кода и готовые же скрипты.

Горячая смесь форта и си!:
Код:
#define PortA 0x80

#define PortB 0x90

// ----------------------------

// Initialises ports

: InitPorts ( -- )

  0x57 PortA !

  0xFF PortB !

;

// ----------------------------

// Initialisation

: InitTarget ( -- )

  InitPorts

;

// ----------------------------

// Main routine

: main ( -- )

  5 6 * DROP

;




Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Сб окт 31, 2009 10:38 
Не в сети

Зарегистрирован: Вс июн 21, 2009 19:11
Сообщения: 81
Откуда: Н.Новгород
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Сегодня ещё кое-что нашёл:
http://sourceforge.net/projects/forpost/
Цитата:
Forpost is an embeddable, interpreted stack-based(Forth-like) language which has simple, compact and effective implementation in ANSI C. Main features: heterogeneous arrays, higher-order functions, program/data equivalence.

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


Вообще на sf.net целая куча разных фортов, на любой вкус и цвет. Не надо изобретать свой велосипед , выбирай готовый!


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт мар 11, 2010 00:10 
Не в сети
Moderator
Moderator

Зарегистрирован: Ср май 10, 2006 15:37
Сообщения: 1132
Откуда: Chelyabinsk ( Ural)
Благодарил (а): 0 раз.
Поблагодарили: 9 раз.
Ссылка для темы uForth
Код:
uForth is a Forth like scripting system for microcontrollers with limited resources. It is written in C and is best used as a glue language to tie C functions and services together dynamically. With that intention, uForth is not a full system Forth. It is neither ANSI compliant nor suitable for Forth programming from the ground up.

uForth can be compiled as a 16 bit or 32 bit stack Forth. The dictionary is stored as 16 bit values.

The VM and interpreter fits in as little as 8KB of Flash and 1KB of RAM (assuming, but not counting, a flash resident dictionary).

The dictionary stores all entries as 16 bit cells in the processor's native endianess. The dictionary can be saved and loaded on processes with the same endianess. It should be trivial to transform the dictionary between processes of different endian.

uForth implements ~55 primitives in C. While some of these words can be defined in uForth itself, they are implemented in C for space efficiency and speed.


P.S. Есть и собранный bin файл для MSP430


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Embedded Forth ( встраивание Форта в Си )
СообщениеДобавлено: Сб апр 21, 2012 12:46 
Ещё один проект создания Форта на С
The nano-Forth project
Код:
The goal of this project is to develop a small Forth kernel suitable for use in small devices, driven by microcontrollers. This means that the kernel has to be as small as possible, need as little resources as possible and work as fast as possible.

This project is a static library, licensed under the terms of GNU Lesser General Public License (former GNU Library Public License) version 3 or later.

nano-Forth is written in a relatively portable manner, but as of today has been successfuly built and tested on the following platforms:

Atmel AVR
    This is the primary target platform for nano-Forth. You will need the avr-gcc toolchain for building.
Linux x86_64
    This is my primary debugging platform. nano-Forth can be successfuly built in debug mode on it, and then you may use gdb to locate various problems in the kernel.
Linux x86
    Unfortunately, due to some limitations in object file format, x86 (AKA i386) is not the best target platform for nano-Forth. You can build a x86 linux executable, but it will run only from a root account.

Дата последнего обновление проекта 03.19.2010г.
Copyright (C) 2010 Andrew Zabolotny <zap@cobra.ru>


Вернуться к началу
  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 66 ]  На страницу Пред.  1, 2, 3, 4, 5

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


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

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


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

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