模块Morphism,其中generate_sequence::(整数->[整数])->整数->[整型]generate_sequence f n=concat$map snd$iterate(map_truncate f)([],[n])map_truncate::(Integer->[Integer])->([Integer],[Integere])->map_truncate f(a,b)=(a++b,drop(长度a+长度b)(concatMap f(a++b))示例_25_2_f::Integer->[Integer]示例25_2_f 0=[0,1,0]示例25_2_f 1=[2,2,2]示例25_2_f 2=[2,2,2]示例_25_m::Integer->Integer示例25_m 0=0示例25_m 1=0示例25_m 2=1a316824::[整数]a316824=映射示例_25_m$generate_sequence示例_25_2_f 0