Forth
http://fforum.winglion.ru/

Возможно ли в СПФ?
http://fforum.winglion.ru/viewtopic.php?f=18&t=3168
Страница 1 из 1

Автор:  F-MAP [ Сб мар 17, 2018 14:21 ]
Заголовок сообщения:  Возможно ли в СПФ?

Вот надумалась идея компилировать слово внутри другого компилируемого
Вот к примеру, можно сохранить xt где то, напр. в константе
:NONAME S" Привет" TYPE CR ; CONSTANT a
: T1 a EXECUTE ;
T1 \ так работает

Можно передать xt через стек
:NONAME S" Привет" TYPE CR ; : T2 LITERAL EXECUTE ;
T2 \ так тоже работает

А хотелось бы типа так, не использовать внешние слова или стек не нагружать
: T3 [ :NONAME S" Привет" TYPE CR ; ] LITERAL EXECUTE ;
T3 \ НЕ РАБОТАЕТ!

Вопрос, возможно ли, чтоб T3 сработал в СПФ? или это бредовая идея?
Для чего это надо? Ну например, при создании Win окна сразу присваивать кнопкам их действия при их нажатии.

Автор:  Victor__v [ Сб мар 17, 2018 14:35 ]
Заголовок сообщения:  Re: Возможно ли в СПФ?

Так это же лямбды имеются ввиду.

Вот две реализации из поставки СПФ
/devel/~pinka/lib/lambda.f

/devel/~yz/lib/inline.f

Автор:  F-MAP [ Сб мар 17, 2018 15:18 ]
Заголовок сообщения:  Re: Возможно ли в СПФ?

Victor__v писал(а):
Так это же лямбды имеются ввиду.

Вот две реализации из поставки СПФ
/devel/~pinka/lib/lambda.f

/devel/~yz/lib/inline.f


Спасибо!

Автор:  KPG [ Сб мар 17, 2018 16:09 ]
Заголовок сообщения:  Re: Возможно ли в СПФ?

Есть и определённые наработки по GOTO для SPF4,
как на местном форуме так и devel SPF4 :)

Автор:  F-MAP [ Сб мар 17, 2018 20:56 ]
Заголовок сообщения:  Re: Возможно ли в СПФ?

KPG писал(а):
Есть и определённые наработки по GOTO для SPF4,
как на местном форуме так и devel SPF4 :)

Ранее не было необходимости, все делалось по сишному типу, например такого недавно на форуме приведенного
Код:
x y w h s" кнопка1" button: bt1
x y w h s" кнопка2" button: bt2
x y w h s" " edit: ed1
: click1 s" Привет!" ed1 text! ;
: click2 s" Пока!" ed2 text! ;

: main
  ['] click1 bt1 onClick !
  ['] click2 bt2 onClick !
;

Даже на лямбды, не заглядывал, считал какие то "ругательные" слова, а вот ведь, можно избавиться от всех этих click-ов и main-ов

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