Open bvssvni opened 6 years ago
Sometimes you have several similar rules like this:
sum_in = [label {"sum" "∑"} in_body] sum_short = [label {"sum" "∑"} short_body] prod_in = [label {"prod" "∏"} in_body] prod_short = [label {"prod" "∏"} short_body] loops = {sum_in:"sum_in" sum_short:"sum_short" prod_in:"prod_in" prod_short:"prod_short"}
By allowing rules to take arguments:
l(op : a b) = {[label op in_body]:a [label op short_body]:b} loops = {l({"sum" "∑"} : "sum_in" "sum_short") l({"prod" "∏"} : "prod_in" "prod_short")}
Notice the pattern <rules> : <strings> when passing arguments.
<rules> : <strings>
This might also allow external storage of rules in the future, such as a vocabulary.
Sometimes you have several similar rules like this:
By allowing rules to take arguments:
Notice the pattern
<rules> : <strings>
when passing arguments.This might also allow external storage of rules in the future, such as a vocabulary.