Exponentiation operator: Difference between revisions

m
Line 663:
pow 0 ( + ) 2 16;; (* 32 *)
pow "" ( ^ ) "abc " 10;; (* "abc abc abc abc abc abc abc abc abc abc " *)
pow [ ] ( @ ) [ 1; 2 ] 10;; (* [1; 2; 1; 2; 1; 2; 1; 2; 1; 2; 1; 2; 1; 2; 1; 2; 1; 2; 1; 2] *)</lang>
 
(* more unusual use *)
Array.init 200 (fun n -> (1 - pow 1 ( - ) 1 (n+n))/2);;
 
(*
[|0; 1; 1; 0; 1; 0; 0; 1; 1; 0; 0; 1; 0; 1; 1; 0; 1; 0; 0; 1; 0; 1; 1; 0; 0;
1; 1; 0; 1; 0; 0; 1; 1; 0; 0; 1; 0; 1; 1; 0; 0; 1; 1; 0; 1; 0; 0; 1; 0; 1;
1; 0; 1; 0; 0; 1; 1; 0; 0; 1; 0; 1; 1; 0; 1; 0; 0; 1; 0; 1; 1; 0; 0; 1; 1;
0; 1; 0; 0; 1; 0; 1; 1; 0; 1; 0; 0; 1; 1; 0; 0; 1; 0; 1; 1; 0; 0; 1; 1; 0;
1; 0; 0; 1; 1; 0; 0; 1; 0; 1; 1; 0; 1; 0; 0; 1; 0; 1; 1; 0; 0; 1; 1; 0; 1;
0; 0; 1; 1; 0; 0; 1; 0; 1; 1; 0; 0; 1; 1; 0; 1; 0; 0; 1; 0; 1; 1; 0; 1; 0;
0; 1; 1; 0; 0; 1; 0; 1; 1; 0; 0; 1; 1; 0; 1; 0; 0; 1; 1; 0; 0; 1; 0; 1; 1;
0; 1; 0; 0; 1; 0; 1; 1; 0; 0; 1; 1; 0; 1; 0; 0; 1; 0; 1; 1; 0; 1; 0; 0; 1|]
 
See http://en.wikipedia.org/wiki/Thue-Morse_sequence
*)
 
</lang>
 
See also [[Matrix-exponentiation_operator#OCaml]] for a matrix usage.
506

edits