Kronecker product by yvl

gets$/*2
b=[*$<]
j=0
$_.map{|c|c.split.map{|v|i=0
b.map{|d|d.gsub(/\d+/){($*[j+i]||="")<<"%5s"%eval("#$&*"+v)};i+=1}}
j+=b.size}
puts$*

Note that non-ascii characters in the above source code will be escaped (such as \x9f).

download

return top