`Operation` isn't specified in BMM nor in Foundation types, and Functional Meta-types uses

Hello everyone,
1- in latest .bmm schema files the it uses Operation in the following Container functions : for_all(test: Operation), there_exists(test: Operation), matching(test: Operation), select(test: Operation).
now the .bmm files maps to that perfectly, but Operation itself isn’t specified anywhere, and If I understand it correctly it is supposed to lambda functions of specific signature (the Foundation types spec already specify these signature like ) so why not just the already use the specified functional meta-types, like for_all(test: Function<T , Boolean>).

or is Operation a special type?

2- To be fully sure is regarding Functional Meta-Type, in Functions, the Args should come before the result type in generic parameter ordering right ? as Function<ARGS, RESULT>, because in AM spec theres a parameter rmcc that is a Function(I opened an issue regarding on Jira earlier), if Foundation types spec is right then it seems that rmcc in wrong in AM spec and .bmm file ??