[erlang-questions] Function Dependency

Matthias Lang <>
Wed Aug 22 10:03:28 CEST 2012


On Wednesday, August 22, Richard O'Keefe wrote:

> All it provides is function *names* (module:atom/arity triples).
> Those are *NOT* what computer science calls signatures.

I tried to get a clearer idea of what "function signatures" are in
general (i.e. not just in C++) by looking at

  http://en.wikipedia.org/wiki/Type_signature

  "In computer science, a type signature or type annotation defines
  the inputs and outputs for a function, subroutine or method. A type
  signature includes at least the function name and the number of its
  arguments. In some programming languages, it may also specify the
  function's return type, the types of its arguments, or errors it may
  pass back."

The "at least" part is a bit odd, and seems to be contradicted by text
further down in the same article, which is more in line with what I
was expecting:

  "The signature of a function is a way of describing the parameters
  and parameter types with which a legal call to the function can be
  made."

Hard to know if whoever wrote that was trying to be clever and left
out the function's name because it's implied by "the function" or if
it's hastily written.

Perhaps there is a language which has a concept of a "function
signature" or a "type signature" which is limited to name + arity.
I can't think of one.

That wikipedia article looks like a good candidate for tightening up;
in particular it doesn't have any good references (which is what I
went there for in the first place). Maybe someone here can suggest
some.

Matt



More information about the erlang-questions mailing list