import { get_size, mut_genome_insert, mutate_genome, } from './genome.js'; const recurse = (f, x0, n) => { if (n == 0) { return x0; } else { return f(recurse(f, x0, n-1)); } }; const n_input = 5; const n_output = 5; const [_1, _2, _3, genome] = recurse( s => mut_genome_insert( s, 4, Math.random(), Math.random(), Math.random() ), [n_input, 10, n_output, []], 20); const n_internal = get_size(n_input, n_output, genome) - n_input - n_output; console.log([n_input, n_internal, n_output, genome]); const mutation = recurse( s => mutate_genome(s, 4), [n_input, n_internal, n_output, genome], 40 ); console.log(mutation);