let hoge n = n mod 2 = 1
let piyo = ( * ) 2
(* function composition *)
let (<<) f g x = f (g x)
let () = f [1;2;3;4;5]
let (>>) f g x = g (f x)
let () = f [1;2;3;4;5]
(* @@ Application operator *)
(* |> Reverse-application operator *)
bGV0IGhvZ2UgbiA9IG4gbW9kIDIgPSAxCmxldCBwaXlvID0gKCAqICkgMgpsZXQgKCkgPSBwcmludF9pbnQgKExpc3QuZm9sZF9sZWZ0ICgrKSAwIChMaXN0Lm1hcCBwaXlvIChMaXN0LmZpbHRlciBob2dlIFsxOzI7Mzs0OzVdKSkpCgooKiBmdW5jdGlvbiBjb21wb3NpdGlvbiAqKQpsZXQgKDw8KSBmIGcgeCA9IGYgKGcgeCkKbGV0IGYgPSBwcmludF9pbnQgPDwgTGlzdC5mb2xkX2xlZnQgKCspIDAgPDwgTGlzdC5tYXAgcGl5byA8PCBMaXN0LmZpbHRlciBob2dlCmxldCAoKSA9IGYgWzE7MjszOzQ7NV0KbGV0ICgpID0gKHByaW50X2ludCA8PCBMaXN0LmZvbGRfbGVmdCAoKykgMCA8PCBMaXN0Lm1hcCBwaXlvIDw8IExpc3QuZmlsdGVyIGhvZ2UpIFsxOzI7Mzs0OzVdCgpsZXQgKD4+KSBmIGcgeCA9IGcgKGYgeCkKbGV0IGYgPSBMaXN0LmZpbHRlciBob2dlID4+IExpc3QubWFwIHBpeW8gPj4gTGlzdC5mb2xkX2xlZnQgKCspIDAgPj4gcHJpbnRfaW50IApsZXQgKCkgPSBmIFsxOzI7Mzs0OzVdCmxldCAoKSA9IChMaXN0LmZpbHRlciBob2dlID4+IExpc3QubWFwIHBpeW8gPj4gTGlzdC5mb2xkX2xlZnQgKCspIDAgPj4gcHJpbnRfaW50KSBbMTsyOzM7NDs1XQoKCigqIEBAIEFwcGxpY2F0aW9uIG9wZXJhdG9yICopCmxldCAoKSA9IHByaW50X2ludCBAQCBMaXN0LmZvbGRfbGVmdCAoKykgMCBAQCBMaXN0Lm1hcCBwaXlvIEBAIExpc3QuZmlsdGVyIGhvZ2UgWzE7MjszOzQ7NV0KCigqIHw+IFJldmVyc2UtYXBwbGljYXRpb24gb3BlcmF0b3IgKikKbGV0ICgpID0gWzE7MjszOzQ7NV0gfD4gTGlzdC5maWx0ZXIgaG9nZSB8PiBMaXN0Lm1hcCBwaXlvIHw+IExpc3QuZm9sZF9sZWZ0ICgrKSAwIHw+IHByaW50X2ludAo=