parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

так >>^table.select(так) << нет, так >> ^table.select{код} << да

Александр Петросян (PAF) 14.10.2004 12:45

ведь вам нужна промежуточная переменная, а грамматика
(выражения в круглых скобках)
не подразумевает возможности присваивания чего-то переменным.
отсюда у вас возникает вспомогательная функция.

однако, ради академического интереса, можно так:
$table[^table::create{name	age	height
a	10	3
b	10	4
c	20	2
}]

$selected[^table.select{^if($table.age==10)(1)}]
#эквивалентно этому:
#$selected[^table.select($table.age==10)]

^selected.menu{$selected.name}[,]
в parser везде, где допустимы () параметры, допустимы и {}параметры, и наоборот.
ведь и (это) и {это} << суть «скомпилированный код, который надо выполнить». то, что он скомпилирован из разной грамматики влияет только на его вид, но не результирующую суть: и то и другое — нечто, что можно выполнить и получить результат.

по документации в очевидно-удобных местах дана декларация с {} и разобраны примеры.
тяжёлые малополезные случаи не вошли :)
политика партии: использовать SQL где только можно, экономя время разработки и последующей поддержки.