anchor.diff:  -module(cognitive).
  --import(genetica_utils, [clamp/3, rand_between/2, zip/2]).
  +-import(genetica_utils, [clamp/3, rand_between/2]).
   -export([random_genotype_fn/1, phenotype_to_genotype_fn/1,
            genotype_to_phenotype_fn/1, fitness_fn/1, crossover_fn/1,
            mutation_fn/1, analyze_fn/2]).
  --compile(export_all).
   
   -record(ptype, {ref, gtype}).
   -record(vertex, {name, tau, sigma, gain}).
  
positive.code: 
  crossover_fn(_) ->
      fun (G1, G2) ->
              G1
      end.
  
  mutation_fn(_) ->
      fun (Geno) ->
              Geno
      end.
  
  analyze_fn(Sock, Fitness_fn) ->
  
negative.code:     ets:insert(Ets, {fitness, 0}),
      new_block(Ets),
      Res = genetica_utils:repeatedly(?NOF_BLOCKS, fun () -> block_run(Ets) end),
  %    io:format("~p~n", [Res]),
      ets:delete(Ets),
      Res.
  
  refit(#ptype{gtype = G, ref = Ref}) ->
      Fitness = gen_fit(G),
      ets:insert(genetica_cognitive_ets, {Ref, Fitness}),
      ok.
  