thumbnail of gg.png
thumbnail of gg.png
gg png
(28.9 KB, 388x396)
thumbnail of outimg.png
thumbnail of outimg.png
outimg png
(1.98 MB, 1920x1080)
Когда-то я тут писал, что незнаю как бы в Лайси была бы реализована свёртка в одну строчку. А это и не надо.
Есть 2 варианта:

float[10][10] convolved;
float[12][12] input;
float[3][3] kernel;

0. Через each:
x,y in each (0:10),(0:10) {
	convolved[y][x] = (input[y:y+3][x:x+3]*kernel[:][:]){+};
}

1. Через лямбда-функцию (?):
convolved[:][:] = lambda (float,[usize x,usize y]) {return (input[y:y+3][x:x+3]*kernel[:][:]){+}} ((0:10),(0:10));

Ни того, ни другого в грядущей версии 0.8 не планируется.
Но как видно, each неплох, но анонимные функции полезны и в других местах коллбеки для ГУИ-элементов