Если вы уверены, что действительно хотите этого, вы можете использовать firstn
из quotations.generalizations
:
SYMBOLS: a b c d e f g h ;
[let
{ 1 2 3 4 5 6 7 8 }
8 firstn :> ( a b c d e f g h )
a b c d e f g h . . . . . . . . ]
Но это звучит как плохая идея. Это сложно, потому что лексические переменные не являются «реальными» переменными, компилятор преобразует их в перемешивание стека. Вот почему они плохо играют с макросами, и :>
нельзя назвать обычным словом.
Если вы используете динамические переменные, это проще:
SYMBOLS: a b c d e f g h ;
{ 1 2 3 4 5 6 7 8 }
{ a b c d e f g h } [ set ] 2each
{ a b c d e f g h } [ get . ] each