You partly answered your own question by mentioning "implementation". Specification and implementation are two different things, and both are important.
A specification describes the externally observable behavior, constraints, and properties of a system. That's independent of how those properties are implemented.
An implementation is a concrete realization of a specification, that achieves the specified behavior using particular algorithms, data structures, and operational mechanisms.
> Pure specification itself is useless without actual implementation (which does the job), so, trying to write such specification (in a natural language) has no practical sense.
That's a non sequitur, i.e. the part of your sentence after the commas doesn't follow from the first part.
"Pure specification itself" has a purpose, which is to guide implementations. That's the "practical sense".