fork download
  1. let popcount =
  2. let rec aux acc = function
  3. 0 -> acc
  4. | d -> aux (acc + d land 1) (d lsr 1)
  5. in aux 0
  6. let (<<) f g x = f (g x)
  7. let f = popcount << Char.code
  8. let println = Printf.printf "%d\n"
  9. let () =
  10. println @@ f 'a';
  11. println @@ max_int;
  12. println @@ popcount max_int;
  13.  
Success #stdin #stdout 0s 5276KB
stdin
Standard input is empty
stdout
3
4611686018427387903
62