RosettaCodeData/Task/First-class-functions/Oz/first-class-functions-1.oz

21 lines
295 B
Plaintext

declare
fun {Compose F G}
fun {$ X}
{F {G X}}
end
end
fun {Cube X} {Number.pow X 3.0} end
fun {CubeRoot X} {Number.pow X 1.0/3.0} end
in
for
F in [Float.sin Float.cos Cube]
I in [Float.asin Float.acos CubeRoot]
do
{Show {{Compose I F} 0.5}}
end