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

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: вопросы чайника
СообщениеДобавлено: Ср июл 30, 2008 04:05 
В процессе изучения SP-FORT увидел сишную вставку в файле ~ac\pipes\pipes.f и отсюда вопрос - там этот кусок для исполнения фортом? и если да, то как такое подключать в своей программе.
И еще маленький глупый вопрос, везде встречается слово xt - что оно означает?


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 06:27 
Не в сети

Зарегистрирован: Ср сен 13, 2006 10:06
Сообщения: 636
Откуда: Омск
Благодарил (а): 0 раз.
Поблагодарили: 3 раз.
xt ссылка на слово, например то что получается по
Код:
' СЛОВО

_________________
Меня нет, не будет и не было.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 07:06 
Pretorian писал(а):
xt ссылка на слово, например то что получается по
Код:
' СЛОВО


Правильно xt - исполнимый токен.
например его можно исполнить с помощью EXECUTE
В режиме компиляции его можно получить ['] СЛОВО
или еще после :NONAME ... ; на стеке остается xt


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: вопросы чайника
СообщениеДобавлено: Ср июл 30, 2008 07:14 
Victor79 писал(а):
В процессе изучения SP-FORT увидел сишную вставку в файле ~ac\pipes\pipes.f и отсюда вопрос - там этот кусок для исполнения фортом? и если да, то как такое подключать в своей программе.


А перед этим кодом строка, которое это дело обходит:)

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


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 13:22 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
Victor79 писал(а):
~ac\pipes\pipes.f и отсюда вопрос - там этот кусок для исполнения фортом?


Там нечто другое

Для исполнения Фортом:
http://wiki.forth.org.ru/ИмперативныйЯзык
http://fpauk.narod.ru/cinf13.rar

Я пока забросил Pascal http://fforum.winglion.ru/viewtopic.php?t=3
Я сделал конвертер на Delthi http://fpauk.narod.ru/pasp4.rar
Для использования в рамках Форт-системы не обязательно переводить его на Форт.
Достаточно представить его в виде ДЛЛ и подключить к Форт-системе.
Конвертацию, при этом, можно производить на уровне строк.
Интерпретацию строки производит слово EVALUATE.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 21:37 
А вот еще вопросик, пишу значит я такую программу:

: Если IF ;
: Иначе ELSE ;
: КонецЕсли THEN ;

: A
1 Если [CHAR] 1 EMIT Иначе [CHAR] 0 EMIT КонецЕсли
;

A BYE

по идее она должна вывести "1". А выводит она "10" (т.е. выполняется и действие по иначе). Как правильно производить замену данных слова (IF ELSE THEN)?


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 23:36 
Не в сети
Аватара пользователя

Зарегистрирован: Ср мар 21, 2007 00:16
Сообщения: 154
Благодарил (а): 2 раз.
Поблагодарили: 2 раз.
: Если IF ; IMMEDIATE
: Иначе ELSE ; IMMEDIATE
: КонецЕсли THEN ; IMMEDIATE

: A
1 Если [CHAR] 1 EMIT Иначе [CHAR] 0 EMIT КонецЕсли
;

A BYE


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 31, 2008 00:05 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5061
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
white_TigR писал(а):
: Если IF ; IMMEDIATE
: Иначе ELSE ; IMMEDIATE
: КонецЕсли THEN ; IMMEDIATE

даже не так ;)
а так:

: Если POSTPONE IF ; IMMEDIATE
: Иначе POSTPONE ELSE ; IMMEDIATE
: Затем POSTPONE THEN ; IMMEDIATE

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

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


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

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


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

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