- or download this
perl -pe '
BEGIN { my $term = qr/(S|K|\((?-1)(?-1)\))/ }
...
s/\(\(\(S($term)\)($term)\)($term)\)/(($1$3)($2$3))/
or s/\(\(K($term)\)($term)\)/$2/;
'
- or download this
perl -Mre=eval -nE <<CODE
chomp;
...
/\^.*$/ or say( ( split /\n/ )[-1] ) while
s/$c_rule(?:\n$nc_rule)*\n---\n.*?\K\1/$2/;
CODE
- or download this
1
11
...
11001110100011
111010111100111
...
- or download this
perl -Mre=eval -nE <<CODE
chomp;
...
s/$c_rule(?:\n+$nc_rule)*\n---\n.*?\K\1(.*?)\2(.*?)\3/$4$7$5$8$6/;
say ( ( split /\n/ )[-1] );
CODE
- or download this
t ::= S
t ::= K
...
p ::= 'p
p ::=
t ::= `tt
- or download this
`````S`KSKxx'x'' # B = S(KS)K
`x`x'x'' # Bxyz = x(yz)
...
``xx''x' # Cxyz = xzy
````SS`K``SKKxx' # W = SS(K(SKK))
``xx'x' # Wxy = xyy