Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8017516

Lambda Spec: Change "function descriptor" -> "function type"

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 8
    • None
    • specification

      The "function descriptor" terminology was inspired by the JVM Spec's use of "descriptor" to refer to a parameter/return signature of a method. In retrospect, this re-use of the term is confusing and compounds existing problems with the VM vs. language terminology in this space (e.g., "signature" in JLS vs. JVMS).

      To clear this up and better align with user intuition:
      - A "function type" is a "method type" (see JLS 8.2) -- not a type itself, but a tuple of types and type lists
      - A functional interface "has" a function type
      - The types that are valid lambda targets, including intersections, are referred to as "functional interface types"

            dlsmith Dan Smith
            dlsmith Dan Smith
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: